2015-10-14 58 views
2

我从“parse.com”中检索到了“ParseFile”。但是,我无法弄清楚读取“ParseFile”的正确方法。我尝试使用parseFile Java的“缓冲区读取器”只能徒然结束。使用java读取“ParseFile”

张贴下面是我的代码

final ParseQuery<ParseObject> query = ParseQuery.getQuery("TestObject"); 
    query.getInBackground("xxxxxxxxx", new GetCallback<ParseObject>() { 
     public void done(ParseObject object, ParseException e) { 
      if (e == null) { 
       try { 
        ParseFile parseFile=object.getParseFile("file"); 
        BufferedReader br = new BufferedReader(new FileReader(String.valueOf(parseFile))); 
        StringBuilder sb = new StringBuilder(); 
        String line = br.readLine(); 
        while (line != null) { 
         sb.append(line); 
         sb.append("\n"); 
         line = br.readLine(); 

        } 
        System.out.println("exact values"+sb.toString()); 
        br.close(); } 
       catch (Exception e1) { 
        e1.printStackTrace(); 
       } 


      } else { 
       System.out.println("bye!!"); 
      } 
     } 
    }); 

张贴下面是我的堆栈跟踪:

10-14 00:10:33.178 18300-18300/? W/System.err﹕  
java.io.FileNotFoundException: 
[email protected]: open failed: ENOENT (No such file or 
directory) 
10-14 00:10:33.178 18300-18300/? W/System.err﹕ at 
libcore.io.IoBridge.open(IoBridge.java:409) 
10-14 00:10:33.178 18300-18300/? W/System.err﹕ at java.io.FileInputStream. 
<init>(FileInputStream.java:78) 
10-14 00:10:33.178 18300-18300/? W/System.err﹕ at java.io.FileInputStream. 
<init>(FileInputStream.java:105) 
10-14 00:10:33.178 18300-18300/? W/System.err﹕ at java.io.FileReader.<init> 
(FileReader.java:66) 

线FilenotFound例外指向:

BufferedReader br = new BufferedReader(new FileReader(String.valueOf(parseFile))); 

任何建议将是非常有益的。 谢谢!

回答

3

您正在将Object parseFile的字符串传递给FileReader,而不是File。

更改线路

BufferedReader br = new BufferedReader(new FileReader(String.valueOf(parseFile))); 

BufferedReader br = new BufferedReader(new FileReader(parseFile.getFile()));