我是编程新手(几个月前刚学过Java),通常在网上搜索得到很多帮助,但这次我很难过。
我正在尝试将Android手机上的传感器数据保存到存储中的文本文件中,然后使用USB线将文本文件拉出来。但是,在我在手机上运行应用程序后,我似乎无法在内部存储的文件夹中找到它。
我确实在清单中包含此行以排除权限问题。
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
当我按下屏幕上的按钮时触发布尔值save_data,并且当按下按钮时,我通过在屏幕上显示开/关来验证按钮是否正常工作。
public void onSensorChanged(SensorEvent event) {
synchronized (this) {
switch (event.sensor.getType()) {
case Sensor.TYPE_ACCELEROMETER:
A_x_value.setText(Float.toString(event.values[0]));
A_y_value.setText(Float.toString(event.values[1]));
A_z_value.setText(Float.toString(event.values[2]));
if (save_data == true) {
SaveButton_Label.setText("On");
String datastring = "A: " + Float.toString(event.values[0]) + " " + Float.toString(event.values[1]) + " " + Float.toString(event.values[2]);
try
{
File f = new File("sensordata.txt");
FileWriter fr = new FileWriter(f);
BufferedWriter out = new BufferedWriter(fr);
out.write(datastring);
out.close();
}
catch (IOException e)
{
System.out.println("Exception");
}
} else {
SaveButton_Label.setText("Off");
}
break;
}
}
}
我感谢你们提供的任何帮助。谢谢!
答案 0 :(得分:1)
创建新的File实例时,必须定义整个路径,包括外部存储路径。
File f = new File(Environment.getExternalStorageDirectory().getPath(), "sensordata.txt");
答案 1 :(得分:0)
you cant see your app folder unless you hav root permission,but u will be able to see the file.
File f = new File(Environment.getExternalStorageDirectory().getPath()+"/"+"sensordata.txt");
copy this code in your java file and try