首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

Visual C# .NET 入門指南(五)

     編輯:關於C語言

步驟 6. 檔案輸入/輸出

現在實作讀取輸入檔案與寫入輸出檔案。將每一行讀取到字串陣列中,然後輸出該陣列。下一步將使用 QuickSort 演算法對陣列排序。

修改原始碼

更改 C# 原始檔(class1.cs),如下面以斜體突出顯示的程式碼所示。其他差異(如類別名稱)可忽略不計。

// Import namespaces
using System;
using System.Collections;
using System.IO;
// Declare namespace
namespace MsdnAA
{
    // Declare application class
    class QuickSortApp
    {
        // Application initialization
        static void Main(string[] szArgs)
        {
            ... ... ...
            // Read contents of source file
            string szSrcLine;
            ArrayList szContents = new ArrayList();
            FileStream fsInput = new FileStream(szSrcFile, FileMode.Open, FileAccess.Read);
            StreamReader srInput = new StreamReader(fsInput);
            while ((szSrcLine = srInput.ReadLine()) != null)
            {
                // Append to array
                szContents.Add(szSrcLine);
            }
            srInput.Close();
            fsInput.Close();
            // TODO: Pass to QuickSort function
            // Write sorted lines
            FileStream fsOutput = new FileStream(szDestFile, FileMode.Create, FileAccess.Write);
            StreamWriter srOutput = new StreamWriter(fsOutput);
            for (int nIndex = 0; nIndex < szContents.Count; nIndex++)
            {
                // Write line to output file
                srOutput.WriteLine(szContents[nIndex]);
            }
            srOutput.Close();
            fsOutput.Close();
            // Report program success
            Console.WriteLine("\nThe sorted lines have been written.\n\n");
        }
    }
}

從來源檔案讀取

使用 FileStream 類別開啟來源檔案,再加入 StreamReader 類別,即可使用其 ReadLine() 方法。呼叫 ReadLine() 直到傳回 null(表示到達檔案結尾)。迴圈中將讀取的行存入字串陣列,然後關閉兩個物件。

讀取檔案

寫入輸出檔案

假設已用 QuickSort 對字串陣列排序,接下來輸出陣列內容。同樣方式將 StreamWriter 附加到 FileStream,便可使用 WriteLine() 方法,方便模仿 Console 類別行為。遍歷陣列後關閉兩個物件。

寫入檔案
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved