お知恵をおかしください
前提・実現したいこと
Eclipseを使用
"names"とい名前でメモ帳を作成
<実現させたこと>
Windowsのメモ帳のテキストファイルに記載されている名前を読み込んで出現回数を表示するプログラムを作っております。
とりあえずはnames.txtというファイルを読み込んで表示させたい。
発生している問題・エラーメッセージ
he specified file not foundjava.io.FileNotFoundException: C:\JavaAssignment\names.text (指定されたファイルが見つかりません。)
該当のソースコード
言語名:Java
import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; public class Assignment5 { public static void main(String[] args) { System.out.println("<出現回数>"); //Specify the path of the file here File file = new File("C:\JavaAssignment\names.text"); BufferedInputStream bis = null; FileInputStream fis= null; try { //FileInputStream to read the file fis = new FileInputStream(file); /*Passed the FileInputStream to BufferedInputStream *For Fast read using the buffer array.*/ bis = new BufferedInputStream(fis); /*available() method of BufferedInputStream * returns 0 when there are no more bytes * present in the file to be read*/ while( bis.available() > 0 ){ System.out.print((char)bis.read()); } }catch(FileNotFoundException fnfe) { System.out.println("The specified file not found" + fnfe); } catch(IOException ioe) { System.out.println("I/O Exception: " + ioe); } finally { try{ if(bis != null && fis!=null) { fis.close(); bis.close(); } }catch(IOException ioe) { System.out.println("Error in InputStream close(): " + ioe); } } } }
試したこと
1:エクスプローラーを開く
2:表示をクリックしてオプションを選択
3:フォルダーオプションの表示を選択して詳細設定の”登録登録されている拡張子の表示しない"のチェックを外し適応させ閉じた
4:参照したいフォルダのdirectory pathをコピーしたのをそのまま使用した。
5:参照したいフォルダの前に""を付け加えてあります。
補足情報(FW/ツールのバージョンなど)
Java_version:8.0
#####追記1
names.text"→names.txtに変更
public static void main(String[] args) { System.out.println("<出現回数>"); //Specify the path of the file here File file = new File("C:\JavaAssignment\names.txt"); BufferedInputStream bis = null; FileInputStream fis= null;
######追記2
-問題点
fileはとりあえず読み込めてerrorが発生しないんですけど、表示された文字が文字化けしてます。恐らく文字コードが一致していないからだと思うんです。
-前提
・eclipseの文字コード
コンテナーからの継承(l) MS932
-試したことeclipseで文字コードの変更(UTF-8)にしても正しく表示されません。
-分からない
上記で試したこと以外で文字化けを解決する方法があればご教示願います。
#######追記3
・元のテキストファイルの内容は以下です。
・英語テキストファイルは以下です。
※日本語でのテキストファイの中身は日本人の名前に、英語でのテキストファイには外国人の名前で記載しています
どちらにしても、英語で記載した中身か日本語かの違いだけですが。
・コンソールでは以下の様にテキストファイから読み込まれた文字のみ文字化け
回答1件
あなたの回答
tips
プレビュー