プログラムを書こう!

実務や自作アプリ開発で習得した役に立つソフトウェア技術情報を発信するブログ

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

この記事は2019年08月11日に投稿しました。

f:id:paveway:20190914064630j:plain

目次

  1. はじめに
  2. C#でファイル情報を取得する
  3. おわりに

独習C# 第3版

独習C# 第3版

  • 作者: ハーバート・シルト,エディフィストラーニング株式会社矢嶋聡
  • 出版社/メーカー: 翔泳社
  • 発売日: 2010/12/03
  • メディア: 大型本
  • 購入: 5人 クリック: 55回
  • この商品を含むブログ (6件) を見る

1. はじめに

こんにちは、iOSのエディタアプリPWEditorの開発者の二俣です。
今回は業務で使用しているC#でファイル情報を取得する方法についてです。

目次へ

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

C#でファイル情報を取得するには、FileInfoクラスを使用します。
FileInfoクラスの以下のプロパティで、ファイルに関する情報が取得または設定できます。

プロパティ名 内容
Attributes ファイルの属性を取得または設定します。
CreationTime ファイルの作成日時を取得または設定します。
CreationTimeUtc ファイルの作成日時を世界協定時刻(UTC)で取得または設定します。
DirectoryName ディレクトリの絶対パスを表す文字列を取得します。
Exists ファイルが存在するかどうかを示す値を取得します。
Extension ファイルの拡張子部分を表す文字列を取得します。
FullName ファイルの絶対パスを取得します。
IsReadOnly ファイルが読み取り専用であるかどうかを判断する値を取得または設定します。
LastAccessTime ファイルに最後にアクセスした時刻を取得または設定します。
LastAccessTimeUtc ファイルに最後にアクセスした時刻を世界協定時刻(UTC)で取得または設定します。
LastWriteTime ファイルに最後に書き込みがなされた時刻を取得または設定します。
LastWriteTimeUtc ファイルに最後に書き込みがなされた時刻を世界協定時刻(UTC)で取得または設定します。
Length ファイルのサイズをバイト単位で取得します。
Name ファイルの名前を取得します。

実装例

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

namespace CSharpFileInfo
{
    class Program
    {
        static void Main(string[] args)
        {
            string fileName = "test.txt";
            var fileInfo = new FileInfo(fileName);

            // ファイルが存在しない場合
            if (!fileInfo.Exists)
            {
                Console.WriteLine($"{fileName} is not exits.");
                return;
            }

            // ファイルが存在する場合
            Console.WriteLine($"Name={fileInfo.Name}");
            Console.WriteLine($"FullName={fileInfo.FullName}");
            Console.WriteLine($"Extension={fileInfo.Extension}");
            Console.WriteLine($"DirectoryName={fileInfo.DirectoryName}");
            Console.WriteLine($"Lenghth={fileInfo.Length}");
            Console.WriteLine($"CreationTime={fileInfo.CreationTime}");
            Console.WriteLine($"CreationTimeUtc={fileInfo.CreationTimeUtc}");
            Console.WriteLine($"LastAccessTime={fileInfo.LastAccessTime}");
            Console.WriteLine($"LastAccessTimeUtc={fileInfo.LastAccessTimeUtc}");
            Console.WriteLine($"LastWriteTime={fileInfo.LastWriteTime}");
            Console.WriteLine($"LastWriteTimeUtc={fileInfo.LastWriteTimeUtc}");
            Console.WriteLine($"IsReadOnly={fileInfo.IsReadOnly}");
            Console.WriteLine($"Attributes={fileInfo.Attributes}");
        }
    }
}

API Reference

FileInfo

目次へ

3. おわりに

業務で作成しているアプリで、ファイルの作成日時を取得する必要があり、その方法を調査しました。

確かな力が身につくC#「超」入門

確かな力が身につくC#「超」入門

紹介している一部の記事のコードはGitlabで公開しています。
興味のある方は覗いてみてください。

目次へ


私が勤務しているニューラルでは、主に組み込み系ソフトの開発を行っております。
弊社製品のハイブリッドOS Bi-OSは高い技術力を評価されており、特に制御系や通信系を得意としています。
私自身はiOSモバイルアプリウィンドウズアプリを得意としております。
ソフトウェア開発に関して相談などございましたら、お気軽にご連絡ください。

また一緒に働きたい技術者の方も随時募集中です。
興味がありましたらご連絡ください。

EMAIL : info-nr@newral.co.jp / m-futamata@newral.co.jp
TEL : 042-523-3663
FAX : 042-540-1688

目次へ