我正在使用android-ndk写入文件。因此,使用本地c代码进行文件写入。同时在NDK中写入和读取文件android
它包含一些我正在使用ndk的读数。 点击一个按钮即可开始写入文件。同时我想读取文件的内容并将它们用于显示值的另一个线程中,因为写入操作可能会持续15秒,用户将不得不等待那么多时间才能看到结果,所以我想要显示一个结果一旦我把它放入那个文件中。
是否可行,如果是的话,可以告诉我如何去做?
嗯,我开始用它,右NW其如何我这样做,,
Thread thr1 = new Thread(r1);
Thread thr2 = new Thread(r2);
thr1.start();
thr2.start();
r1 = new Runnable() {
public void run() {
File sdcard= Environment.getExternalStorageDirectory();
nativeFunction(sdcard +"/readings.txt");
//takingReading=false;
readingFile = new File(sdcard +"/readings.txt");
Log.i("length of file", ""+readingFile.length());
}
};
r2 = new Runnable() {
public void run() {
try {
Thread.sleep(3000);
File sdcard= Environment.getExternalStorageDirectory();
readingFile = new File(sdcard +"/readings.txt");
Log.i("length of file", ""+readingFile.length());
} catch (InterruptedException iex) {}
}
};
nativeFunction打开
file= fopen(location,"w+");
此功能不断写的东西在文件约2分钟, 但我需要不断得到值输入bye原生函数,所以我开始第二线程,但是当我检查file.length()它总是0.
和wh本机功能写入完成,然后实际文件大小。那么如何解决这个问题呢?
我想知道可行性,无论是否可行,那么只有我想到开始。 –