あいねこの館         管理者にコメントを送る

■本サイトは?

当ホームページでは、日々の日記を中心に、プログラムの説明(PHPとJava)、ドコモの携帯の情報を取り扱っています。
またゲームサーバの設置、PHPで作ったゲーム、アプリケーションを設置、配布しております。
初心者の皆さんも上級者の皆さんもぜひ満足頂けるそんなサイトを目指したいと日々奮闘中です。


【▼中心記事】旅行記/ ▽激安商品特集/ ▽FXレポート/ ▽PHPアプリの配布・説明/ ▽Javaの説明限定版・初回版・お買得情報
【▼WEBアプリ】簡単WEB家計簿/ ▽プロフェッショナルWEB家計簿/
【▼Webゲーム】商人物語/ ▽商人物語(WorldAtlas)/ ▽枝モン(RO)/ ▽ROモンスターバトル/ ▽アイテムトレード(RO)/ ▽HPバトラー/ ▽ブラックジャック/ ▽マジカルバナナ
▼スポンサードリンク

■カレンダー

前月 2008年11月 翌月
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30            

■CONTETS

【サイトについて】
Top
Profile

【アプリケーション】
簡単WEB家計簿
プロフェッショナルWEB家計簿

【独立サイト】
これって私だけ!?
ゲームの殿堂

【コラム】
カフェで勉強!
資格を取ろう!

【Webゲーム】
貴方の頭を活性化させよう!
商人物語
商人物語(WorldAtlas)
枝モン(RO)
ROモンスターバトル
アイテムトレード(RO)
HPバトラー
ブラックジャック
マジカルバナナ

【旅行】
Travel
Picture

【プログラム】
■PHP
 ▽PHP
 ▽PHP独自関数
 ▽PHPを始めて学ぼう!
  ※yahooカテゴリ掲載サイト
C++
java
C++builder

【お得な買い物】
激安商品特集
限定版・初回版・お買得情報

【趣味の世界・・・】
K10D MANIAX

【データベース】
DSのソフト一覧
wiiのソフト一覧

【ログ】
Diary
News
Topic

【その他】
サイトマップ
mail(MSN)

■携帯版

お手持ちの携帯電話からQRコードを読み取ることが出来ます。
アドレス:http://aineko.com/mobile/

【管理者用】
サイト更新

■アップデート履歴

[diary] meet the world beat 2008(2008/07/28)
[diary] 簿記1級講座(2008/07/15)
[diary] 解等結果(2008/07/06)
[diary] ビジネス法務検定(2008/07/06)
[diary] アンケート例(2008/07/05)
[diary] ビジネス法務検定(2008/07/05)
[diary] HDDレコーダー(RD-E301)(2008/06/30)
[diary] プロフェッショナルWEB家計簿のメンテ(2008/06/29)
[diary] 試験の結果(2008/06/22)
[diary] 住民税(2008/06/17)

■ご意見・ご要望

管理者にコメントを送る

■アクセス数

update 2008/07/28   ALL114560 TODAY37 YESTADAY173


LINK

●検索サイト
Google
Yahoo!Japan
goo
●相互リンク
ぽたっこゆな
ResTel
●一般ニュース
Googleニュース
読売新聞
●PCニュース
PC Watch
ITmedia
●ゲームニュース
4gamer
ITmedia Games
ファミ通
●通信販売
amazon
●価格情報
価格.com
●個人ニュースサイト
TS
連邦
●読み物
探偵ファイル
●面白
負け猫たちの呟き
爆笑画像掲示板
pya!
リアルイラスト専用掲示板
●映画情報
映画生活
●音楽情報
オリコン
●電車時刻表
JRおでかけネット(JR西)
阪急電鉄
●辞書
goo辞書
アルク
●百科事典
ウィキペディア
●グルメ
グルナビ
●就職活動
みんなの就職活動日記
●リンクサイト
どんとこいサーチ

ファイルからテキストを読み取る

●ファイルから読み取る

前回は、キーボードからテキストを読み取りましたが、今回はテキストに書かれている内容を読み取ります。

Javaにおける基本的な考え方を以下に示します。

1.ファイルを読み取るメソッドを生成
2.ファイルの内容を出力するメソッドを生成
3.内容を出力する

先ず、ファイルの内容を読み取るには、クラスFileReaderを用いて、ファイルの内容を読み取ります。FileReaderを用いると文字コードを特に気にせずに用いることができます。

//ファイルを読み込むメソッドを生成
FileReader file_data = new FileReader(args[0]);
ファイルを読み込む場合には、コマンドラインの引数からファイル名を読み込んでいます。

次に、ファイルが読み込まれましたので、その内容を表示するメソッドを生成します。インスタンス化されたfile_dataをクラスBufferedReaderの引数として用いることにより、ファイルの文字列を読み取ることができます。

//ファイルのデータを読み込むメソッドを生成
BufferedReader contents = new BufferedReader(file_data);
インスタンス化されたcontentsから、文字列を表示していくには、readLineから、ファイルの内容を一列ずつ読み取ります。ファイルの内容をすべて表示するために、文字列を一列ずつ読み取ることで、最後までくると、その内容はnullになるため、nullになると、文字列を読み取る繰り返しのwhileを終了させます。

while(true){
	String data = contents.readLine();
	if(data != null){
		System.out.println(data);
	}
	else{
		break;
		}
}
以上全ての内容をサンプルプログラムとして以下に示します。

//ファイルを読み込み、内容を表示するサンプルプログラム
import java.io.*;//java.ioクラスをインポート

class fileread
{
	//メインメソッド
	public static void main(String args[]){

		if(args.length == 0){
			System.out.println("読み込むファイル名を入力してください。");
			System.exit(1);
		}

		try{
		
			//ファイルを読み込むメソッドを生成
			FileReader file_data = new FileReader(args[0]);

			//ファイルのデータを読み込むメソッドを生成
			BufferedReader contents = new BufferedReader(file_data);		

			while(true){
				String data = contents.readLine();
				if(data != null){
					System.out.println(data);
				}
				else{
					break;
					}
			}
		}
		catch(IOException e){
			System.out.println("ファイル入出力時にエラー");
			System.exit(1);
		}
	}
}
実行結果は以下の通りです。
D:\private\java>javac fileread.java

D:\private\java>java fileread test.txt
test
test1
test2
test3
引数は、読み込むファイル名で、ここでは「text.txt」です。1つずつ上記のサンプルプログラムを確認していきます。

if(args.length == 0){
	System.out.println("読み込むファイル名を入力してください。");
	System.exit(1);
}
最初では、引数が与えられていない時のエラー処理です。System.exit(1)でプログラムを終了しています。また、args.lengthでは、引数の数を求めています。

try{
〜
catch(IOException e){
	System.out.println("ファイル入出力時にエラー");
	System.exit(1);
}
入出力を扱っているため、例外処理を行わなければなりません。ファイル入出力時にエラーが出ると、この箇所のエラー処理が実行されます。

以上を用いて、ファイルの読み込みができました。次は、ファイルの書き込みをみていきましょう。



戻る
amazonから個人的にお勧めする商品を紹介します。
私が購入した商品


サーチ:
キーワード:
Amazon.co.jpアソシエイト