2016-02-10 37 views
0

我想讀一個文件.txt裏面有一個json,但我得到一個FileNotFoundException和obj爲null。我認爲路徑是錯誤的,但我已經看到在其他問題,這將是正確的......在java(android)中讀取文件.txt的正確路徑是什麼?

我使用的是Windows和,是的,我有這個路徑中的文件。

JsonParser parser = new JsonParser(); 
Object obj; 

     try { 
      obj = parser.parse(new FileReader("C:/Users/Kevin/jsontest.txt")); 
     }catch(FileNotFoundException f){ 

     } 
+0

嘗試打印錯誤'f.printStackTrace()的堆棧跟蹤;'沒有說什麼線誤差來自(哪裏? –

+0

這是錯誤:java.io.FileNotFoundException:C/Users/Kevin/json.txt:打開失敗:ENOENT(沒有這樣的文件或目錄) –

+0

嘗試C:\\ Users \\ Kevin \\ jsontest.txt – BryanT

回答

0

試試這個選項。

  1. 在res文件夾中創建一個原始文件夾,並放在這裏你的txt。
  2. 把這個代碼:

     Resources res = getResources(); 
         InputStream in = res.openRawResource(R.raw.jsontest); 
         String json = IOUtils.toString(in); 
         IOUtils.closeQuietly(in); 
    
  3. 將這個串在你的JSONObject

    的JSONObject J =新的JSONObject(fakejson);

  4. 也許你需要導入Utils。加入這搖籃:

    編譯 '公地IO:公共-10:2.4'

0

我不知道你在瞄準的,但你完全可以先檢查一下,如果故障是由FileReader對象(或路徑)來了,然後把它添加到JsonParser對象返回。注意:嘗試把文件放在你正在編寫你的java文件的同一個工作區中。

0

使用Files.lines。如果你想一行一行地閱讀,那麼一些東西可以做到這一點。

import java.io.IOException; 
import java.nio.file.Files; 
import java.nio.file.Path; 
import java.nio.file.Paths; 
import java.util.stream.Stream; 

public class Readfile { 

    public static void main(String args[]) { 
     final Path location = Paths.get("C:/Users/Kevin/jsontest.txt"); 
     try (Files.lines(location)) { 
      lines.forEach(line -> 
       System.out.println(line) 
      ); 
     } catch (IOException e) { 
      // we have a problem 
     } 
    } 
} 

以上將逐行處理文本文件。

如果另一方面您嘗試解析JSON,請使用Jackson

+0

cannnot解決符號路徑.. –

+0

我不能做這個導入,我在android中,不知道這可能是問題... –

相關問題