Я сохраняю XML-файл в памяти, но не могу получить к нему доступ

#android

#Android

Вопрос:

Я указываю адрес этого файла data/data/org.com.Cache/files/cacheImplementationOutput , но я получил следующее сообщение об ошибке…..

 java.io.IOException: Couldn't open /data/data/org.com.Cache/files/cacheImplementationOutput
  

Ответ №1:

укажите имя метода как fetch (url, outputXml);

и прочитайте содержимое xml как….
FileInputStream fis = openFileInput (outputXml);

общедоступный байт [] readBytes (входной поток InputStream, строка outputXml) { try { ByteArrayOutputStream ByteBuffer = new ByteArrayOutputStream(); размер буфера int = 1024; byte [] buffer = новый байт [Размер буфера]; OutputStreamWriter fout = новый OutputStreamWriter(openFileOutput( outputXml,0)); int len = 0; в то время как ((len = входной поток.чтение (буфер)) != -1) { ByteBuffer.write(буфер, 0, len); } fout.запись (новая строка (ByteBuffer.toByteArray())); fout.close(); возвращает ByteBuffer.toByteArray(); }catch (исключение NullPointerException e) { e.printStackTrace(); } catch (Исключение e) { } возвращает null;

 }

public void fetch(URL url, String outputXml) {
    try {

        InputStream myInputStream = null;
        StringBuilder sb = new StringBuilder();

        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
        conn.setDoOutput(true);
        conn.setRequestMethod("POST");
        conn.setRequestProperty("Content-Type", "application/xml");
        OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
        wr.write(sb.toString());
        wr.flush();
        wr.close();
        myInputStream = conn.getInputStream();
        readBytes(myInputStream, outputXml);
        System.out.println("writing is done");
    }catch (NullPointerException e) {
        e.printStackTrace();
    } 
    catch (Exception e) {
    }

}
  

Ответ №2:

Вы забыли / в начале адреса хранилища…

так data/data/org.com.Cache/files/cacheImplementationOutput это просто data/data/org.com.Cache/data/data/org.com.Cache/files/cacheImplementationOutput

Комментарии:

1. Спасибо за ваш ответ… но у меня также есть упоминание / в начале … на самом деле это XML-файл…. Мне нужно получить к нему доступ