読者です 読者をやめる 読者になる 読者になる

感謝のプログラミング 10000時間

たどり着いた結果(さき)は、感謝でした。

C#でファイルやディレクトリの情報を取得する方法と、ファイルの情報を読み込む方法

<スポンサーリンク>

C#でファイルの情報を取得する

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            String fileName = @"C:\tmp\hoge.txt";
            String dirName = @"C:\tmp";
            FileInfo fileInto = new FileInfo(fileName);
            Console.WriteLine(fileName + "の作成日時:" + fileInto.CreationTime);

            DirectoryInfo directoryInfo = new DirectoryInfo(dirName);

            //ディレクトリの存在チェック
            Console.WriteLine(dirName + "は存在する?:" + directoryInfo.Exists);
            Console.WriteLine("\n" + dirName + "のファイル一覧:");

            foreach (var file in directoryInfo.EnumerateFiles())
            {
                Console.WriteLine(file.FullName);
            }

        }
    }

}

出力は以下の通り。

C:\tmp\hoge.txtの作成日時:2013/09/29 14:43:39
C:\tmpは存在する?:True

C:\tmpのファイル一覧:
C:\tmp\hoge.txt
C:\tmp\log.txt
C:\tmp\member.xml
C:\tmp\member2.xml

C#でテキストファイルの内容を一括で読み込む

System.IO.Fileのメソッドを使う。

  • ReadAllText:テキストをすべて読み込む
  • ReadAllLines:すべての行を読み込む
  • WriteAllText:すべて書き込む
  • WriteAllLines:すべての行を書き込む

ReadAllTextはすべての内容を1つの文字列として読み込む。
ReadAllLinesは行ごとに分割した文字列の配列として返す。
サンプルは以下の通り。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            String fileName = @"C:\tmp\hoge.txt";
            string data = File.ReadAllText(fileName);
            Console.WriteLine("テキストの内容:\n" + data);
        }
    }

}

出力は以下の通り。

テキストの内容:
佐藤健太
杉山善昭
吉川友樹

読んだ本

C# ポケットリファレンス

C# ポケットリファレンス


信頼と安定のポケットリファレンスシリーズ。「ポケット」と名がつくけれど、全然あなどれない。サンプルが豊富でわかりやすい。

感謝のプログラミング

今回で感謝のプログラミングは【655時間目】
10000時間まで、あと【9345時間】