FileInfo コンストラクタ
アセンブリ: mscorlib (mscorlib.dll 内)
構文
例外
完全修飾ファイル名または相対ファイル名のいずれかを指定できますが、セキュリティ チェックでは完全限定名が採用されます。
その他の一般的な I/O タスクまたは関連する I/O タスクの例を次の表に示します。
File.AppendText FileInfo.AppendText | |
File.Move FileInfo.MoveTo | |
File.Delete FileInfo.Delete | |
File.Copy FileInfo.CopyTo | |
FileInfo.Length | |
File.GetAttributes | |
File.SetAttributes | |
Path.GetExtension | |
Path.GetFullPath | |
Path.GetFileName | |
Path.ChangeExtension |
このコンストラクタを使用して 2 つのファイルを作成し、それらに対して書き込み、読み取り、コピー、および削除を実行する例を次に示します。
Imports System Imports System.IO Class Test Public Shared Sub Main() Dim path As String = "c:\temp\MyTest.txt" Dim fi1 As FileInfo = New FileInfo(path) If fi1.Exists = False Then 'Create a file to write to. Dim sw As StreamWriter = fi1.CreateText() sw.WriteLine("Hello") sw.WriteLine("And") sw.WriteLine("Welcome") sw.Flush() sw.Close() End If 'Open the file to read from. Dim sr As StreamReader = fi1.OpenText() Do While sr.Peek() >= 0 Console.WriteLine(sr.ReadLine()) Loop Try Dim path2 As String = path + "temp" Dim fi2 As FileInfo = New FileInfo(path2) 'Ensure that the target does not exist. fi2.Delete() 'Copy the file. fi1.CopyTo(path2) Console.WriteLine("{0} was copied to {1}.", path, path2) 'Delete the newly created file. fi2.Delete() Console.WriteLine("{0} was successfully deleted.", path2) Catch e As Exception Console.WriteLine("The process failed: {0}", e.ToString()) End Try End Sub End Class
using System; using System.IO; class Test { public static void Main() { string path = @"c:\temp\MyTest.txt"; FileInfo fi1 = new FileInfo(path); if (!fi1.Exists) { //Create a file to write to. using (StreamWriter sw = fi1.CreateText()) { sw.WriteLine("Hello"); sw.WriteLine("And"); sw.WriteLine("Welcome"); } } //Open the file to read from. using (StreamReader sr = fi1.OpenText()) { string s = ""; while ((s = sr.ReadLine()) != null) { Console.WriteLine(s); } } try { string path2 = path + "temp"; FileInfo fi2 = new FileInfo(path2); //Ensure that the target does not exist. fi2.Delete(); //Copy the file. fi1.CopyTo(path2); Console.WriteLine("{0} was copied to {1}.", path, path2); //Delete the newly created file. fi2.Delete(); Console.WriteLine("{0} was successfully deleted.", path2); } catch (Exception e) { Console.WriteLine("The process failed: {0}", e.ToString()); } } }
using namespace System; using namespace System::IO; int main() { String^ path = "c:\\temp\\MyTest.txt"; FileInfo^ fi1 = gcnew FileInfo( path ); if ( !fi1->Exists ) { //Create a file to write to. StreamWriter^ sw = fi1->CreateText(); try { sw->WriteLine( "Hello" ); sw->WriteLine( "And" ); sw->WriteLine( "Welcome" ); } finally { if ( sw ) delete (IDisposable^)sw; } } //Open the file to read from. StreamReader^ sr = fi1->OpenText(); try { String^ s = ""; while ( s = sr->ReadLine() ) { Console::WriteLine( s ); } } finally { if ( sr ) delete (IDisposable^)sr; } try { String^ path2 = String::Concat( path, "temp" ); FileInfo^ fi2 = gcnew FileInfo( path2 ); //Ensure that the target does not exist. fi2->Delete(); //Copy the file. fi1->CopyTo( path2 ); Console::WriteLine( "{0} was copied to {1}.", path, path2 ); //Delete the newly created file. fi2->Delete(); Console::WriteLine( "{0} was successfully deleted.", path2 ); } catch ( Exception^ e ) { Console::WriteLine( "The process failed: {0}", e ); } }
import System.*; import System.IO.*; class Test { public static void main(String[] args) { String path = "c:\\temp\\MyTest.txt"; FileInfo fi1 = new FileInfo(path); if (!(fi1.get_Exists())) { //Create a file to write to. StreamWriter sw = fi1.CreateText(); try { sw.WriteLine("Hello"); sw.WriteLine("And"); sw.WriteLine("Welcome"); } finally { sw.Dispose(); } } //Open the file to read from. StreamReader sr = fi1.OpenText(); try { String s = ""; while ((s = sr.ReadLine())!= null) { Console.WriteLine(s); } } finally { sr.Dispose(); } try { String path2 = path + "temp"; FileInfo fi2 = new FileInfo(path2); //Ensure that the target does not exist. fi2.Delete(); //Copy the file. fi1.CopyTo(path2); Console.WriteLine("{0} was copied to {1}.", path, path2); //Delete the newly created file. fi2.Delete(); Console.WriteLine("{0} was successfully deleted.", path2); } catch (System.Exception e) { Console.WriteLine("The process failed: {0}", e.ToString()); } } //main } //Test
既存ファイルを開くか、またはファイルを作成し、ファイルにテキストを追加し、結果を表示する例を次に示します。
Imports System Imports System.IO Public Class FileInfoMainTest Public Shared Sub Main() ' Open an existing file, or create a new one. Dim fi As New FileInfo("temp.txt") ' Create a writer, ready to add entries to the file. Dim sw As StreamWriter = fi.AppendText() sw.WriteLine("This is a new entry to add to the file") sw.WriteLine("This is yet another line to add...") sw.Flush() sw.Close() Dim sr As New StreamReader(fi.OpenRead()) ' Get the information out of the file and display it. While sr.Peek() <> -1 Console.WriteLine(sr.ReadLine()) End While End Sub 'Main End Class 'FileInfoMainTest
using System; using System.IO; public class FileInfoMainTest { public static void Main() { // Open an existing file, or create a new one. FileInfo fi = new FileInfo("temp.txt"); // Create a writer, ready to add entries to the file. StreamWriter sw = fi.AppendText(); sw.WriteLine("This is a new entry to add to the file"); sw.WriteLine("This is yet another line to add..."); sw.Flush(); sw.Close(); // Get the information out of the file and display it. StreamReader sr = new StreamReader( fi.OpenRead() ); while (sr.Peek() != -1) Console.WriteLine( sr.ReadLine() ); } }
using namespace System; using namespace System::IO; int main() { // Open an existing file, or create a new one. FileInfo^ fi = gcnew FileInfo( "temp.txt" ); // Create a writer, ready to add entries to the file. StreamWriter^ sw = fi->AppendText(); sw->WriteLine( "This is a new entry to add to the file" ); sw->WriteLine( "This is yet another line to add..." ); sw->Flush(); sw->Close(); // Get the information out of the file and display it. StreamReader^ sr = gcnew StreamReader( fi->OpenRead() ); while ( sr->Peek() != -1 ) Console::WriteLine( sr->ReadLine() ); }
import System; import System.IO; public class FileInfoMainTest { public static function Main() : void { // Open an existing file, or create a new one. var fi : FileInfo = new FileInfo("temp.txt"); // Create a writer, ready to add entries to the file. var sw : StreamWriter = fi.AppendText(); sw.WriteLine("This is a new entry to add to the file"); sw.WriteLine("This is yet another line to add..."); sw.Flush(); sw.Close(); // Get the information out of the file and display it. var sr : StreamReader = new StreamReader( fi.OpenRead() ); while (sr.Peek() != -1) Console.WriteLine( sr.ReadLine() ); } } FileInfoMainTest.Main();
プラットフォーム
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
参照
- FileInfo コンストラクタのページへのリンク