我是编程新手(几个月前刚学过 Java),通常通过在这里搜索在线找到很多帮助,但这次我很困惑。
我正在尝试将我的 Android 手机上的传感器数据保存到存储器中的文本文件中,稍后使用 USB 线将文本文件拉出。但是,在手机上运行该应用程序后,我似乎无法在内部存储的文件夹中找到它。
我确实在我的 list 中包含了这一行以排除权限问题。
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
当我按下屏幕上的按钮时, bool 值 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;
}
}
非常感谢你们提供的任何帮助。谢谢!
最佳答案
当您创建一个新的 File 实例时,您必须定义整个路径,包括外部存储路径。
File f = new File(Environment.getExternalStorageDirectory().getPath(), "sensordata.txt");
关于android bufferedwriter - 找不到文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15869738/