方法1
/**
バイトでファイルを読み取ります。これは、写真、サウンド、画像、その他のファイルなどのバイナリファイルを読み取るためによく使用されます。
もちろん、文字列を読むことができます。
*/
/*ネットワーク環境は非常に複雑であり、毎回送信される文字は固定された長さです。このようにして? */public String readString1(){try {// fileinputStreamは、画像データなどの生のバイトストリームを読み取るために使用されます。文字ストリームを読むには、FileReaderの使用を検討してください。 fileInputStream instream = this.openfileinput(file_name); bytearrayoutputStream bos = new bytearrayoutputStream(); byte [] buffer = new byte [1024]; int length = -1; while((length = instream.read(buffer)!= -1){bos.write(buffer、0、length); // .writeメソッドSDKの説明は、このストリームのオフセットインデックスから始まるバイトアレイバッファーからカウントバイトを書き込みます。バッファサイズは、なぜBOSを返す方が良いのですか?方法2
//誰かがFileReaderの文字列を読む方が良いと言ったので、FileReaderを使用してください
//一度に読むのは少し非効率的ですか? private static string readstring2(){stringbuffer str = new StringBuffer( ""); file file = new file(file_in); try {fileReader fr = new fileReader(file); int ch = 0; while((ch = fr.read())!= -1){system.out.print((char)ch+""); } fr.close(); } catch(ioException e){// todo auto-fenated catch block e.printstacktrace(); System.out.println( "ファイルリーダーエラー"); } return str.toString();}方法3
/byteによって文字列を読む/
/*私は個人的には、最良の方法はバイトを読んで(一度に読んで)バイトを読むことだと感じています。 1回読んでトランスコーディングした後、バイトを読む方が良いのではないでしょうか*/
private static string readstring3()
{
string str = ""; file file = new file(file_in); try {fileInputStream in = new fileInputStream(file); //サイズは文字列の長さで、int size = in.abailable()を読み取ります。 byte [] buffer = new byte [size]; in.read(buffer); in.close(); str = new String(buffer、 "gb2312");} catch(ioexception e){// dodo auto-enerated catch block return null; e.printstacktrace();} return str;}
方法4
/inputStreamReader+bufferedReader文字列を読み取り、inputStreamReaderクラスはバイトストリームから文字ストリームへのブリッジです/
/* read by lineは、処理するフォーマットされたデータを読み取る良い方法です*/private static string readstring4(){int len = 0; stringbuffer str = new StringBuffer( ""); file file = new file(file_in); try {fileInputStream is = new fileInputStream(file); inputStreamReader ISR = new inputStreamReader(is); BufferedReader in = new BufferedReader(ISR);文字列line = null; while((line = in.readline())!= null){if(len!= 0)//ハンドルラインブレーク{str.append( "/r/n"+line); } else {str.append(line); } len ++; } in.close(); is.close(); } catch(ioException e){// todo auto-fenated catch block e.printstacktrace(); } return str.toString();}道路は段階的に取らなければなりません。あなたが歩いた道を覚えておいて、二度と同じ間違いを犯すことはありません。これは真の成長です!アドバイスややり取りをすることへようこそ。
Javaの文字列にファイルを読み取る上記の方法は、私があなたと共有するすべてのコンテンツです。参照を提供できることを願っています。wulin.comをもっとサポートできることを願っています。