cari

Rumah  >  Soal Jawab  >  teks badan

java8 - java.nio.charset.MalformedInputException: Input length = 2

大家讲道理大家讲道理2881 hari yang lalu1562

membalas semua(2)saya akan balas

  • 高洛峰

    高洛峰2017-04-18 10:47:13

    public static void main(String[] args) throws IOException {
            File file = new File("/home/yangxiaohuan/Documents/TokenizeThenSplitParallelDeletePatternLTZero.txt");
            InputStreamReader read = new InputStreamReader(new FileInputStream(file), "UTF-8");// 考虑到编码格式
            BufferedReader br = new BufferedReader(read);
            int cnt=0;
            while(br.ready()){
                String text = br.readLine();
                cnt++;
                if(cnt>=47334){
                    System.out.println(text);
                    }
                System.out.println("cnt = "+cnt);
                }
            }
    }

    Kod asal perlu mengimport kelas berikut
    import java.nio.file.Files;
    import java.nio.file.Paths;
    Tetapi tukar kepada borang ini
    import java .io.File;
    import java.io.FileInputStream;
    adalah perkara biasa dan tiada ralat.
    Tambahan pula, beberapa rakan mengatakan bahawa memadamkan satu aksara daripada teks asal dan baris dengan ralat tidak akan menyebabkan ralat. Soalan yang sangat pelik. Saya tidak tahu mengapa terdapat masalah menggunakan nio.file.Files

    balas
    0
  • PHPz

    PHPz2017-04-18 10:47:13

    Terima kasih atas jemputan. Anda mungkin salah faham perbezaan antara IO dan NIO Perkara yang paling asas ialah IO berorientasikan aliran dan NIO berorientasikan penimbal jelas menggunakan aliran BufferedReader dan InputStreamReader. Jika anda menggunakan nio, readLine tidak akan berfungsi sama sekali. Tidak boleh membaca, NIO hanya boleh membaca penimbal, mengimbas saiz penimbal, dan apabila menghuraikan data, NIO perlu membayar harga yang lebih tinggi daripada menyekat strim IO.

    balas
    0
  • Batalbalas