Main.java Source code

Java tutorial

Introduction

Here is the source code for Main.java

Source

//package com.java2s;
import android.os.Environment;

import android.util.Log;

import java.io.DataInputStream;

import java.io.EOFException;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;

import java.io.IOException;

public class Main {
    final private static String TAG = "IOHelper";

    /**
     * Read the featureVector_Shape.dat file.
     * Build the double array and return it.
     * k : number of rows
     * n : number of columns
     */
    public static float[][] readBinFloatDoubleArray(String dir, String fileName, int k, int n) {
        float[][] array2D = new float[k][n];
        float x;
        File sdLien = Environment.getExternalStorageDirectory();
        File inFile = new File(sdLien + File.separator + dir + File.separator + fileName);
        Log.d(TAG, "path of file : " + inFile);
        if (!inFile.exists()) {
            throw new RuntimeException("File doesn't exist");
        }
        DataInputStream in = null;
        try {
            in = new DataInputStream(new FileInputStream(inFile));
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
        try {
            for (int i = 0; i < k; i++) {
                for (int j = 0; j < n; j++) {
                    x = in.readFloat();
                    array2D[i][j] = x;
                }
            }
        } catch (EOFException e) {
            try {
                Log.d(TAG, "close");
                in.close();
            } catch (IOException e1) {
                e1.printStackTrace();
            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (in != null) {
                try { //free ressources
                    Log.d(TAG, "close");
                    in.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
        return array2D;
    }
}