Submit Search
Upload
C#によるファイルの読み書き
•
Download as PPTX, PDF
•
0 likes
•
486 views
Hiroki Takahashi
Follow
C#でのファイルの読み書きの基礎を学びます
Read less
Read more
Engineering
Report
Share
Report
Share
1 of 23
Download now
Recommended
Word bench nagoya 5月度
Word bench nagoya 5月度
Yoji Izumi
C# TreeViewを使用する1
C# TreeViewを使用する1
Hiroki Takahashi
C# Database操作1 接続と切断-
C# Database操作1 接続と切断-
Hiroki Takahashi
C# FileSystemWatcherコントロールを使用したアプリケーションの作成
C# FileSystemWatcherコントロールを使用したアプリケーションの作成
Hiroki Takahashi
C# Database操作2 データの取得-
C# Database操作2 データの取得-
Hiroki Takahashi
C# TreeViewを使用する2
C# TreeViewを使用する2
Hiroki Takahashi
Photoshopでバナー "いい感じ" に制作せよ!
Photoshopでバナー "いい感じ" に制作せよ!
Hiroki Shibata
More C++11
More C++11
京大 マイコンクラブ
Recommended
Word bench nagoya 5月度
Word bench nagoya 5月度
Yoji Izumi
C# TreeViewを使用する1
C# TreeViewを使用する1
Hiroki Takahashi
C# Database操作1 接続と切断-
C# Database操作1 接続と切断-
Hiroki Takahashi
C# FileSystemWatcherコントロールを使用したアプリケーションの作成
C# FileSystemWatcherコントロールを使用したアプリケーションの作成
Hiroki Takahashi
C# Database操作2 データの取得-
C# Database操作2 データの取得-
Hiroki Takahashi
C# TreeViewを使用する2
C# TreeViewを使用する2
Hiroki Takahashi
Photoshopでバナー "いい感じ" に制作せよ!
Photoshopでバナー "いい感じ" に制作せよ!
Hiroki Shibata
More C++11
More C++11
京大 マイコンクラブ
ADO.NETとORMとMicro-ORM -dapper dot netを使ってみた
ADO.NETとORMとMicro-ORM -dapper dot netを使ってみた
Narami Kiyokura
C#/.NETがやっていること 第二版
C#/.NETがやっていること 第二版
信之 岩永
Xamarin ~ iOS/Android/Windows アプリをC# で作ろう~
Xamarin ~ iOS/Android/Windows アプリをC# で作ろう~
Fujio Kojima
Apple審査を一発通過!iOS開発経験0でも出来るじげん流Swift開発のすべて
Apple審査を一発通過!iOS開発経験0でも出来るじげん流Swift開発のすべて
Masaru Gushiken
Deep Dive C# 6.0
Deep Dive C# 6.0
信之 岩永
おっさんES6/ES2015,React.jsを学ぶ
おっさんES6/ES2015,React.jsを学ぶ
dcubeio
中の下のエンジニアを脱出するための仕事術
中の下のエンジニアを脱出するための仕事術
Noriaki Kadota
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツ
増田 亨
オブジェクト指向プログラミングのためのモデリング入門
オブジェクト指向プログラミングのためのモデリング入門
増田 亨
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Kazumi IWANAGA
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
Akira Inoue
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
Hiroh Satoh
20140409勉強会
20140409勉強会
Masato Egami
10分で分かるr言語入門ver2.14 15 0905
10分で分かるr言語入門ver2.14 15 0905
Nobuaki Oshiro
20010901
20010901
小野 修司
10分で分かるr言語入門ver2.15 15 1010
10分で分かるr言語入門ver2.15 15 1010
Nobuaki Oshiro
Html講義
Html講義
Junya Koshiro
Apache Avro vs Protocol Buffers
Apache Avro vs Protocol Buffers
Seiya Mizuno
Mosesdecoderコード解読の勘所
Mosesdecoderコード解読の勘所
Jun-ya Norimatsu
BPstudy#64 ドキュメントを作りたくなってしまう魔法のツール Sphinx 2012年版
BPstudy#64 ドキュメントを作りたくなってしまう魔法のツール Sphinx 2012年版
Go Yamada
Data APIの背景と活用方法
Data APIの背景と活用方法
Hajime Fujimoto
File API: Writer & Directories and System
File API: Writer & Directories and System
Taku AMANO
More Related Content
Viewers also liked
ADO.NETとORMとMicro-ORM -dapper dot netを使ってみた
ADO.NETとORMとMicro-ORM -dapper dot netを使ってみた
Narami Kiyokura
C#/.NETがやっていること 第二版
C#/.NETがやっていること 第二版
信之 岩永
Xamarin ~ iOS/Android/Windows アプリをC# で作ろう~
Xamarin ~ iOS/Android/Windows アプリをC# で作ろう~
Fujio Kojima
Apple審査を一発通過!iOS開発経験0でも出来るじげん流Swift開発のすべて
Apple審査を一発通過!iOS開発経験0でも出来るじげん流Swift開発のすべて
Masaru Gushiken
Deep Dive C# 6.0
Deep Dive C# 6.0
信之 岩永
おっさんES6/ES2015,React.jsを学ぶ
おっさんES6/ES2015,React.jsを学ぶ
dcubeio
中の下のエンジニアを脱出するための仕事術
中の下のエンジニアを脱出するための仕事術
Noriaki Kadota
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツ
増田 亨
オブジェクト指向プログラミングのためのモデリング入門
オブジェクト指向プログラミングのためのモデリング入門
増田 亨
Viewers also liked
(9)
ADO.NETとORMとMicro-ORM -dapper dot netを使ってみた
ADO.NETとORMとMicro-ORM -dapper dot netを使ってみた
C#/.NETがやっていること 第二版
C#/.NETがやっていること 第二版
Xamarin ~ iOS/Android/Windows アプリをC# で作ろう~
Xamarin ~ iOS/Android/Windows アプリをC# で作ろう~
Apple審査を一発通過!iOS開発経験0でも出来るじげん流Swift開発のすべて
Apple審査を一発通過!iOS開発経験0でも出来るじげん流Swift開発のすべて
Deep Dive C# 6.0
Deep Dive C# 6.0
おっさんES6/ES2015,React.jsを学ぶ
おっさんES6/ES2015,React.jsを学ぶ
中の下のエンジニアを脱出するための仕事術
中の下のエンジニアを脱出するための仕事術
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向プログラミングのためのモデリング入門
オブジェクト指向プログラミングのためのモデリング入門
Similar to C#によるファイルの読み書き
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Kazumi IWANAGA
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
Akira Inoue
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
Hiroh Satoh
20140409勉強会
20140409勉強会
Masato Egami
10分で分かるr言語入門ver2.14 15 0905
10分で分かるr言語入門ver2.14 15 0905
Nobuaki Oshiro
20010901
20010901
小野 修司
10分で分かるr言語入門ver2.15 15 1010
10分で分かるr言語入門ver2.15 15 1010
Nobuaki Oshiro
Html講義
Html講義
Junya Koshiro
Apache Avro vs Protocol Buffers
Apache Avro vs Protocol Buffers
Seiya Mizuno
Mosesdecoderコード解読の勘所
Mosesdecoderコード解読の勘所
Jun-ya Norimatsu
BPstudy#64 ドキュメントを作りたくなってしまう魔法のツール Sphinx 2012年版
BPstudy#64 ドキュメントを作りたくなってしまう魔法のツール Sphinx 2012年版
Go Yamada
Data APIの背景と活用方法
Data APIの背景と活用方法
Hajime Fujimoto
File API: Writer & Directories and System
File API: Writer & Directories and System
Taku AMANO
.NETの自作ツール公開手段
.NETの自作ツール公開手段
Pierre3 小林
Mvc conf session_2_shibamura
Mvc conf session_2_shibamura
Hiroshi Okunushi
Azure Infrastructure as Code 体験入隊
Azure Infrastructure as Code 体験入隊
Toru Makabe
G0042 h
G0042 h
silicone69
Dalvikバイトコードリファレンスの読み方 改訂版
Dalvikバイトコードリファレンスの読み方 改訂版
Takuya Matsunaga
フォントのファイルフォーマット
フォントのファイルフォーマット
Gifig Mania
[POST.Dev Japan] VS Code で試みる開発体験の向上
[POST.Dev Japan] VS Code で試みる開発体験の向上
Tomomi Imura
Similar to C#によるファイルの読み書き
(20)
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
20140409勉強会
20140409勉強会
10分で分かるr言語入門ver2.14 15 0905
10分で分かるr言語入門ver2.14 15 0905
20010901
20010901
10分で分かるr言語入門ver2.15 15 1010
10分で分かるr言語入門ver2.15 15 1010
Html講義
Html講義
Apache Avro vs Protocol Buffers
Apache Avro vs Protocol Buffers
Mosesdecoderコード解読の勘所
Mosesdecoderコード解読の勘所
BPstudy#64 ドキュメントを作りたくなってしまう魔法のツール Sphinx 2012年版
BPstudy#64 ドキュメントを作りたくなってしまう魔法のツール Sphinx 2012年版
Data APIの背景と活用方法
Data APIの背景と活用方法
File API: Writer & Directories and System
File API: Writer & Directories and System
.NETの自作ツール公開手段
.NETの自作ツール公開手段
Mvc conf session_2_shibamura
Mvc conf session_2_shibamura
Azure Infrastructure as Code 体験入隊
Azure Infrastructure as Code 体験入隊
G0042 h
G0042 h
Dalvikバイトコードリファレンスの読み方 改訂版
Dalvikバイトコードリファレンスの読み方 改訂版
フォントのファイルフォーマット
フォントのファイルフォーマット
[POST.Dev Japan] VS Code で試みる開発体験の向上
[POST.Dev Japan] VS Code で試みる開発体験の向上
More from Hiroki Takahashi
C# Database操作6 SqlDataAdapterを使用したデータの更新-
C# Database操作6 SqlDataAdapterを使用したデータの更新-
Hiroki Takahashi
C# Database操作5 SqlDataAdapterを使用したデータの取得-
C# Database操作5 SqlDataAdapterを使用したデータの取得-
Hiroki Takahashi
C# Database操作4 トランザクション処理-
C# Database操作4 トランザクション処理-
Hiroki Takahashi
C# Database操作3 データの更新-
C# Database操作3 データの更新-
Hiroki Takahashi
C# ドラッグ&ドロップ処理の実装
C# ドラッグ&ドロップ処理の実装
Hiroki Takahashi
C# 時間の掛かる処理をBackgroundWorkerコンポーネントで実行する
C# 時間の掛かる処理をBackgroundWorkerコンポーネントで実行する
Hiroki Takahashi
C# ErrorProviderとValidatingイベント
C# ErrorProviderとValidatingイベント
Hiroki Takahashi
C# 継承フォームの作成
C# 継承フォームの作成
Hiroki Takahashi
C# モーダルフォームとモードレスフォーム
C# モーダルフォームとモードレスフォーム
Hiroki Takahashi
C#でディレクトリを再帰的に取得する
C#でディレクトリを再帰的に取得する
Hiroki Takahashi
More from Hiroki Takahashi
(10)
C# Database操作6 SqlDataAdapterを使用したデータの更新-
C# Database操作6 SqlDataAdapterを使用したデータの更新-
C# Database操作5 SqlDataAdapterを使用したデータの取得-
C# Database操作5 SqlDataAdapterを使用したデータの取得-
C# Database操作4 トランザクション処理-
C# Database操作4 トランザクション処理-
C# Database操作3 データの更新-
C# Database操作3 データの更新-
C# ドラッグ&ドロップ処理の実装
C# ドラッグ&ドロップ処理の実装
C# 時間の掛かる処理をBackgroundWorkerコンポーネントで実行する
C# 時間の掛かる処理をBackgroundWorkerコンポーネントで実行する
C# ErrorProviderとValidatingイベント
C# ErrorProviderとValidatingイベント
C# 継承フォームの作成
C# 継承フォームの作成
C# モーダルフォームとモードレスフォーム
C# モーダルフォームとモードレスフォーム
C#でディレクトリを再帰的に取得する
C#でディレクトリを再帰的に取得する
C#によるファイルの読み書き
1.
C#によるファイルの読み書き ~StreamReaderとStreamWriter~ Microsoft MVP Hiroki.T http://blog.hiros-dot.net/ copyright
@2015 HIRO's.NET All Rights Reserved.
2.
C#でファイルを読み書きするには? ファイル読み込みは StreamReaderクラスを使用する
ファイル書き込みは StreamWriterクラスを使用する
3.
StreamWriterによる書き込み
4.
StreamWriterの構文 オーバーロードは7つある。代表的なものは以下の通り StreamWriter(string
path) StreamWriter(string path, bool append) StreamWriter(string path, bool append, Encoding encoding) path:データ書き込み先のファイルパス append: ファイルに追加書き込みする場合はtrue encoding: 使用する文字エンコーディング
5.
StreamWriterの基本使用例 string path =
@"C:Worktest.txt"; Encoding enc = Encoding.GetEncoding("Shift_Jis"); using (StreamWriter sw = new StreamWriter(path, true, enc)) { sw.Write("Writeメソッドは改行しません"); sw.WriteLine("WriteLineメソッドは改行します"); }
6.
StreamReaderによる読み込み
7.
StreamReaderの構文 オーバーロードは11ある。代表的なものは以下の通り StreamReader(string
path) StreamReader(string path, Encoding encoding) path:データ読み込み元のファイルパス encoding: 使用する文字エンコーディング
8.
StreamReaderの基本使用例 *ファイル内容を1行ずつ読み込む string path =
@"C:Worktest.txt"; Encoding enc = Encoding.GetEncoding("Shift_Jis"); List<string> listLine = new List<string>(); string strLine = string.Empty; using (StreamReader sr = new StreamReader(path, enc)) { // 1行読み込みをし、読み込んだデータがnull以外ならループ while ((strLine = sr.ReadLine()) != null) { // リストに行の内容を追加 listLine.Add(strLine); } }
9.
簡易テキストエディタを作成 する
10.
プロジェクトの作成と画面デザイン コントロール:TextBox Name: txtMemo MultiLine: true コントロール:Button Name:
btnRead コントロール:Button Name: btnWrite コントロール:SaveFileDialog Name: dlgSaveコントロール:OpenFileDialog Name: dlgOpen
11.
[読み込みボタン]クリック時の処理 using System.IO; Encoding ENC_SHIFT_JIS
= Encoding.GetEncoding("Shift_Jis"); private void btnRead_Click(object sender, EventArgs e) { // 「ファイルを開く」ダイアログでOK以外が押された場合は処理を抜ける if (dlgOpen.ShowDialog() != DialogResult.OK) return; try { using (StreamReader sr = new StreamReader(dlgOpen.FileName, ENC_SHIFT_JIS)) { txtMemo.Text = sr.ReadToEnd(); } } 次ページへ続く
12.
前ページからの続き catch (IOException ioex) { MessageBox.Show(ioex.Message,
"ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error); } catch (Exception ex) { MessageBox.Show(ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
13.
[名前を付けて保存]ボタンクリック時の処理 private void btnSave_Click(object
sender, EventArgs e) { // 「名前を付けて保存」ダイアログでOK以外が押された場合は処理を抜ける if (dlgSave.ShowDialog() != DialogResult.OK) return; try { using (StreamWriter sw = new StreamWriter(dlgSave.FileName, false, ENC_SHIFT_JIS)) { sw.Write(txtMemo.Text); } } catch (IOException ioex) { MessageBox.Show(ioex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error); } catch (Exception ex) { MessageBox.Show(ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
14.
ステータスバーを付けて 読み込んだファイル名を表示する
15.
フォームにStatusStripを貼り付ける コントロール:StatusStrip Name: stsStatus コントロール:StatusLabel Name: lblFilename Text:
(空欄にする) ①StatusStripを貼り付ける ②StatusLabelを追加する
16.
読み込んだファイル名を表示する private void btnRead_Click(object
sender, EventArgs e) { // 「ファイルを開く」ダイアログでOK以外が押された場合は処理を抜ける if (dlgOpen.ShowDialog() != DialogResult.OK) return; lblFilename.Text = dlgOpen.FileName; // ←この1行を追加
17.
メニューを付ける
18.
フォームにメニューを付ける ①MenuStripを貼り付ける ②メニューを追加する Name: menuFile Text: ファイル
(&F) Name: menuFileOpen Text: 開く(&O) Name: menuFileSeparator Text: - Name: menuFileSave Text: 名前を付けて保存(&A) Name: menuFileEnd Text: 終了(&X)
19.
「開く(O)」イベントの作成 「開く(o)」が押された場合の処理は、[読み込み]ボタンと同じ。 よって「開く(O)」イベントに[読み込み]のイベントを紐づける ①選択 ②選択
20.
「名前を付けて保存(S)」イベントの作成 「名前を付けて保存(S)」が押された場合の処理は、[書き込み]ボ タンと同じ。 よって「名前を付けて保存(S)」イベントに[書き込み]のイベントを 紐づける ①選択 ②選択
21.
[終了(X)]イベントの作成 [終了(X)]メニューのイベントを作成する ①選択 ②ダブルクリックでイベント が作成される
22.
「終了(X)」イベントのコード private void menuFileEnd_Click(object
sender, EventArgs e) { this.Close(); }
23.
End
Download now