10 在C#中讀取文件


我們在前一個練習中已經了解了如何在C#控制台程序(console)中讀取用戶的輸入。現在我們要學習如何從一個文件中讀取內容。在下面的練習中,你要格外小心。關於文件的操作,一不小心會損失你的重要文件。

在這個練習中我們首先要創建一個純文本文件ex10_sample.txt 放到c盤的Exercise10目錄下。通常c盤下是沒有Exercise10目錄的,請先建立這個目錄。我們的C#程序會讀取這個純文本文件的內容如果你不知道如何創建純文本文件,請首先在網上查一下。如果查不到,可以聯系我哦。

這個文件的內容如下:

  1. 這是我用c#讀取的第一個文件

  2. 我和David學習C#,感覺進步很快

  3. 我想介紹我的朋友也和David學習C#

我們想實現的功能是用我們的程序打開一個文件,然后把它的內容輸出出來。但是我們不想把文件的名字ex10_sample.txt寫死在程序里邊。我們想在程序運行的時候,讓用戶輸入要打開的文件的名字。

 

你創建一個項目。解決方案名稱為Sloution10,項目名稱為Exercise10,項目類型為控制台程序。

點擊Program.cs. 在Main方法中加入這些代碼。

 在這個新的程序中,我們引入一些對我們來說很新的功能。我在這里給大家介紹一下。

15,16行代碼:讓用戶輸入要打開的文件名稱。文件我們要求放在c盤的exercise10目錄下。

20, 21行代碼:把文件的目錄名稱和文件名稱連接在一起,組成一個完成的文件路徑名稱。這樣我們的程序才能找到這個文件

23行碼:使用C#的File類判斷用c盤的exercise10目錄下用戶指定的文件,是否存在。File.Exists()是File的一個方法,它用文件的完整路徑路徑名稱作為參數,判斷該文件是否存在。

這里給大家介紹一個新的語法 if, else

 

if (判斷條件)

{ 判斷條件為真要執行的代碼}

else

{ 判斷條件為假要執行的代碼}

 

如果判斷問真,就是true時,則執行 {判斷條件為真要執行的代碼};如果判斷條件為假,則執行{ 判斷條件為假要執行的代碼}

25行代碼:將文件中的內容全部讀出來,賦值給一個字符串。當文件很大時,這種方法需要占用很大的內存空間。還有其他一行一行讀取文件內容的方法,你可以在網上查一下。如果找不到,可以聯系我哦。

27行代碼: 將字符串中的內容輸出到dos窗口中。

30,34代碼:文件名如果用戶提供的不對,就會找到文件。在我們的程序里我們會在dos窗口輸出一句話,提示用戶文件找不到。

 

運行結果

 

練習

  1. 為每一條語句加上注釋,解釋它的功能。如果不明白,可以現在網上查詢。找不到,記得咨詢我。

  2. 你自己創建一個新的文本文件和office word文件放在c盤的exercise10目錄下,用你的程序打開它們。

  3. C#中還有其他讀取文件的方法,試着用其他方法讀取一下文件

  4. 試着理解一下文件編碼的概念。在網上搜索一下吧。

  5. 如果不指定File.ReadAllText()的編碼格式為Encoding.Default。你可以刪掉25行File.ReadAllText()的第二個參數Encoding.Default,看一下,文件的內容還會正常顯示嗎?

 

 

 


付費解答C#入門學習過程中碰到的各種問題。

零基礎學習C#入門,大多數的問題都可以通過自學或借助互聯網解決。

但是還是會有一些問題,不是那么容易解決,成為了你學習的絆腳石。最后甚至造成你學習的半途而廢。通常學習C#編程入門,你會遇到20到30多個你不能很容易解決的問題。

這個時候,你最需要什么呢?

對!一個專業的老師給你幫助!

你在學習本課程中,遇到任何問題都可以通過qq或email想本教程作者進行求助。

只需30元你就可以得到本教程作者的三次專業解答。所以你只需不到300元就可以順利的完成C#入門,從此推開軟件行業的大門。

 

付費方式非常簡單:

用微信掃描下面的二維碼。在付款留言中留下你的qq號或email地址就可以啦。

 

教育不是要便宜,而是要可靠!真正聰明的人,更懂得花錢讓專業的人為自己服務,提高自己的效率。

 

老師qq:2040227296

老師email:2040227296@qq.com


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM