У меня есть вспомогательный класс, который мне нужен для обработки данных для моего приложения.Как я могу записать файл во внутреннюю память Android с помощью opencsv?
Я настроил его так, чтобы он читал файл по URL-адресу. Сам чтение работает, но мне трудно записать этот файл во внутреннюю память приложения.
Согласно учебнику Android, я использовал FileOutputStream для записи файла. Однако мне сложно найти решение для записи FileOutputStream и его разрешения с помощью конструктора CSVWriter.
Код очень долго, так что я опубликую суть, если Вам необходима дополнительная информация о том, что делает мой код, но вот бит, который вызывает у меня проблемы:
BufferedReader in = new BufferedReader(new InputStreamReader(file_url.openStream()));
String test;
CSVReader reader = new CSVReader(in, ';');
FileOutputStream file_out = app_context.openFileOutput(file_name, Context.MODE_PRIVATE);
CSVWriter writer = new CSVWriter(<What goes here?>, ';');
https://gist.github.com/anonymous/4cde37a8614d1c69cc03ec678d36a9d7
Исключение выброшен с CSVWriter писателем = новый CSVWriter (String.valueOf (file_out), ';') ;:
08-19 14:22:30.794 29439-30099/com.example.a1003137m.profitgraph W/System.err: java.io.FileNotFoundException: [email protected]: open failed: EROFS (Read-only file system)
08-19 14:22:30.794 29439-30099/com.example.a1003137m.profitgraph W/System.err: at libcore.io.IoBridge.open(IoBridge.java:452)
08-19 14:22:30.794 29439-30099/com.example.a1003137m.profitgraph W/System.err: at java.io.FileOutputStream.<init>(FileOutputStream.java:87)
08-19 14:22:30.794 29439-30099/com.example.a1003137m.profitgraph W/System.err: at java.io.FileOutputStream.<init>(FileOutputStream.java:72)
08-19 14:22:30.794 29439-30099/com.example.a1003137m.profitgraph W/System.err: at java.io.FileWriter.<init>(FileWriter.java:80)
08-19 14:22:30.794 29439-30099/com.example.a1003137m.profitgraph W/System.err: at com.example.a1003137m.profitgraph.FileProcessor.processFile(FileProcessor.java:50)
08-19 14:22:30.794 29439-30099/com.example.a1003137m.profitgraph W/System.err: at com.example.a1003137m.profitgraph.FileProcessor.run(FileProcessor.java:40)
08-19 14:22:30.795 29439-30099/com.example.a1003137m.profitgraph W/System.err: Caused by: android.system.ErrnoException: open failed: EROFS (Read-only file system)
08-19 14:22:30.795 29439-30099/com.example.a1003137m.profitgraph W/System.err: at libcore.io.Posix.open(Native Method)
08-19 14:22:30.795 29439-30099/com.example.a1003137m.profitgraph W/System.err: at libcore.io.BlockGuardOs.open(BlockGuardOs.java:186)
08-19 14:22:30.795 29439-30099/com.example.a1003137m.profitgraph W/System.err: at libcore.io.IoBridge.open(IoBridge.java:438)
08-19 14:22:30.795 29439-30099/com.example.a1003137m.profitgraph W/System.err: ... 5 more
'<Что здесь?>'. Вы пытались 'file_out'? – greenapps
Да, это говорит мне, чтобы он обернул его String.valueOf(), но он выдает исключение. – cmackie21
И вы не собираетесь рассказывать, какой? Не умно! Вывести логарифм. – greenapps