如何将数据保存在内部或外部目录中?
How to save data in internal or external directory?
java.io.IOException: 没有那个文件或目录
我想将传感器数据保存在 .csv 数据中,但我总是收到此错误。有人可以帮忙吗???
fun onStop(view: View){
sensorManager.unregisterListener(this)
val fileName = "Accelerometer $time.csv"
var data = _accelerometerStringBuilder.toString()
var fileWriter: FileWriter? = null
var myExFile = File(getExternalFilesDir("/storage/emulated/0"),fileName)
File.createTempFile("Accelerometer $time", "csv", myExFile)
fileWriter = FileWriter(fileName)
fileWriter.appendLine(CSV_HEADER)
fileWriter.appendLine(data)
fileWriter.close()
var myExternalFile2:File = File(getExternalFilesDir("/storage/emulated/0"),"Gyroscope $time.csv")
File.createTempFile("Gyroscope $time", "csv", myExternalFile2)
fileWriter = FileWriter("Gyroscope $time.csv")
fileWriter.appendLine(CSV_HEADER)
fileWriter.appendLine(_gyroscopeStringBuilder.toString())
fileWriter.close()
}
试试这个:
fun onStop(view: View) {
sensorManager.unregisterListener(this)
val fileAcc = File(PathUtils.getExternalAppFilesPath(),"Accelerometer $time.csv")
FileIOUtils.writeFileFromString(fileAcc,_accelerometerStringBuilder.toString(),true)
FileIOUtils.writeFileFromString(fileAcc,CSV_HEADER,true)
val fileGyro = File(PathUtils.getExternalAppFilesPath(),"Gyroscope $time.csv")
FileIOUtils.writeFileFromString(fileGyro,_gyroscopeStringBuilder.toString(),true)
FileIOUtils.writeFileFromString(fileGyro,CSV_HEADER,true)
}
这个库让事情变得更简单:implementation 'com.blankj:utilcodex:1.29.0'
权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
为确保文件已成功创建,请转至 phone > 文件管理器应用 > 搜索栏 > 搜索 time.csv,您将在此处看到已创建的文件
java.io.IOException: 没有那个文件或目录
我想将传感器数据保存在 .csv 数据中,但我总是收到此错误。有人可以帮忙吗???
fun onStop(view: View){
sensorManager.unregisterListener(this)
val fileName = "Accelerometer $time.csv"
var data = _accelerometerStringBuilder.toString()
var fileWriter: FileWriter? = null
var myExFile = File(getExternalFilesDir("/storage/emulated/0"),fileName)
File.createTempFile("Accelerometer $time", "csv", myExFile)
fileWriter = FileWriter(fileName)
fileWriter.appendLine(CSV_HEADER)
fileWriter.appendLine(data)
fileWriter.close()
var myExternalFile2:File = File(getExternalFilesDir("/storage/emulated/0"),"Gyroscope $time.csv")
File.createTempFile("Gyroscope $time", "csv", myExternalFile2)
fileWriter = FileWriter("Gyroscope $time.csv")
fileWriter.appendLine(CSV_HEADER)
fileWriter.appendLine(_gyroscopeStringBuilder.toString())
fileWriter.close()
}
试试这个:
fun onStop(view: View) {
sensorManager.unregisterListener(this)
val fileAcc = File(PathUtils.getExternalAppFilesPath(),"Accelerometer $time.csv")
FileIOUtils.writeFileFromString(fileAcc,_accelerometerStringBuilder.toString(),true)
FileIOUtils.writeFileFromString(fileAcc,CSV_HEADER,true)
val fileGyro = File(PathUtils.getExternalAppFilesPath(),"Gyroscope $time.csv")
FileIOUtils.writeFileFromString(fileGyro,_gyroscopeStringBuilder.toString(),true)
FileIOUtils.writeFileFromString(fileGyro,CSV_HEADER,true)
}
这个库让事情变得更简单:implementation 'com.blankj:utilcodex:1.29.0'
权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
为确保文件已成功创建,请转至 phone > 文件管理器应用 > 搜索栏 > 搜索 time.csv,您将在此处看到已创建的文件