2017-11-26 14 views
1

大きなJSONファイルが121MBあります。私はその構造とデータを読んでみたい。私はnotepad ++とjson editorのchromeのプラグインで読むことができません。私はjavaでそれを読むことを試みた。単純なjsonの読書も例外を与えています:大容量のJSONファイルを読み込み中にメモリがある

Exception in thread "main" java.lang.OutOfMemoryError: GC overhead limit exceeded

私はjacksonストリーミングAPIを使用しています。構造とデータを完全に読み取るにはどうすればよいですか?私はそのjson構造のキーと値を知らない。

import java.io.File; 
import java.io.IOException; 

import com.fasterxml.jackson.core.JsonFactory; 
import com.fasterxml.jackson.core.JsonGenerationException; 
import com.fasterxml.jackson.core.JsonParser; 
import com.fasterxml.jackson.core.JsonToken; 


public class JacksonStreamExample { 
    public static void main(String[] args) { 

     try { 

      JsonFactory jfactory = new JsonFactory(); 

      /*** read from file ***/ 
      JsonParser jParser = jfactory.createParser(new File(
        "E:\\NUST\\Semester 3\\region_descriptions.json")); 
      while (jParser.nextToken() != JsonToken.END_OBJECT) { 

      System.out.println(jParser.getCurrentName()); 
      jParser.nextToken(); 
      System.out.println(jParser.getText()); 
      } 
      jParser.close(); 

     } catch (JsonGenerationException e) { 

      e.printStackTrace(); 

     }catch (IOException e) { 

      e.printStackTrace(); 

     } 

    } 

} 

テキストまたはJSONビューアで読む方法はありますか?またはJavaコードを使用していますか?場合は、Javaコード、どのようにJSONの構造を読み取るには?

+0

重複:https://stackoverflow.com/questions/159521/text-editor-to-open-big-giant-huge-large-text-files and https://stackoverflow.com/questions/18208524/how-do-i-read-a-text-of-2-gbファイル – DevDio

+0

構造がわかっている場合は、必要なものをフィルタリングしてサイズを小さくするために "jq"を使うことができます。 –

答えて

1

メモ帳++では、一度に大きなファイルを開くことができます。

メモ帳++ですでに開いているファイルをすべて閉じて、この大(大)ファイルをすべて開いてみてください。

私は同じ問題に直面しています。私が上記で述べたことが私の問題を解決しました。

編集:これでも問題が解決しない場合は、システムのメモリに問題があります。または、010Editorを使用すると、最大5GBの大容量ファイルを開くことができます。

+0

すべてのファイルを閉じましたが、今でも「ファイルが大きすぎてNotepad ++で開くことができません」というメッセージが表示されます –

+0

コメントが更新されました。 をご確認ください。 ありがとうございます。 –

+0

010EditorはJSON形式でファイルを表示しますか? –

関連する問題