方法 : ファイルからテキストを読み取る
テキスト ファイルからテキストを読み取る方法を次のコード例に示します。 2 番目の例では、ファイルの末尾が検出されたときに通知します。 この機能は、ReadAllLines メソッドまたは ReadAllText メソッドを使用して実行することもできます。
使用例
Imports System
Imports System.IO
Class Test
Public Shared Sub Main()
Try
' Create an instance of StreamReader to read from a file.
' The using statement also closes the StreamReader.
Using sr As New StreamReader("TestFile.txt")
Dim line As String
' Read and display lines from the file until the end of
' the file is reached.
Do
line = sr.ReadLine()
If Not (line Is Nothing) Then
Console.WriteLine(line)
End If
Loop Until line Is Nothing
End Using
Catch e As Exception
' Let the user know what went wrong.
Console.WriteLine("The file could not be read:")
Console.WriteLine(e.Message)
End Try
End Sub
End Class
using System;
using System.IO;
class Test
{
public static void Main()
{
try
{
// Create an instance of StreamReader to read from a file.
// The using statement also closes the StreamReader.
using (StreamReader sr = new StreamReader("TestFile.txt"))
{
String line;
// Read and display lines from the file until the end of
// the file is reached.
while ((line = sr.ReadLine()) != null)
{
Console.WriteLine(line);
}
}
}
catch (Exception e)
{
// Let the user know what went wrong.
Console.WriteLine("The file could not be read:");
Console.WriteLine(e.Message);
}
}
}
using namespace System;
using namespace System::IO;
ref class Test
{
public:
static void Main()
{
try
{
// Create an instance of StreamReader to read from a file.
// The using statement also closes the StreamReader.
StreamReader^ sr = gcnew StreamReader("TestFile.txt");
String^ line;
// Read and display lines from the file until the end of
// the file is reached.
while ((line = sr->ReadLine()) != nullptr)
{
Console::WriteLine(line);
}
sr->Close();
}
catch (Exception^ e)
{
// Let the user know what went wrong.
Console::WriteLine("The file could not be read:");
Console::WriteLine(e->Message);
}
}
};
int main()
{
Test::Main();
}
Imports System
Imports System.IO
Public Class TextFromFile
Private Const FILE_NAME As String = "MyFile.txt"
Public Shared Sub Main()
If Not File.Exists(FILE_NAME) Then
Console.WriteLine("{0} does not exist.", FILE_NAME)
Return
End If
Using sr As StreamReader = File.OpenText(FILE_NAME)
Dim input As String
Do
input = sr.ReadLine()
If Not (input Is Nothing) Then
Console.WriteLine(input)
End If
Loop Until input Is Nothing
Console.WriteLine ("The end of the stream has been reached.")
End Using
End Sub
End Class
using System;
using System.IO;
public class TextFromFile
{
private const string FILE_NAME = "MyFile.txt";
public static void Main()
{
if (!File.Exists(FILE_NAME))
{
Console.WriteLine("{0} does not exist.", FILE_NAME);
return;
}
using (StreamReader sr = File.OpenText(FILE_NAME))
{
String input;
while ((input = sr.ReadLine()) != null)
{
Console.WriteLine(input);
}
Console.WriteLine ("The end of the stream has been reached.");
}
}
}
using namespace System;
using namespace System::IO;
public ref class TextFromFile
{
private:
static String^ FILE_NAME = "MyFile.txt";
public:
static void Main()
{
if (!File::Exists(FILE_NAME))
{
Console::WriteLine("{0} does not exist.", FILE_NAME);
return;
}
StreamReader^ sr = File::OpenText(FILE_NAME);
String^ input;
while ((input = sr->ReadLine()) != nullptr)
{
Console::WriteLine(input);
}
Console::WriteLine ("The end of the stream has been reached.");
sr->Close();
}
};
int main()
{
TextFromFile::Main();
}
信頼性の高いプログラミング
このコードでは、File.OpenText を呼び出すことによって、MyFile.txt を対象とする StreamReader が作成されます。 StreamReader.ReadLine は、各行を 1 つの文字列として返します。 読み取る文字がなくなると、それを知らせるメッセージが表示され、ストリームが閉じます。
メモ |
---|
Visual Basic のユーザーは、ファイル I/O 用の FileSystem クラスに用意されているメソッドとプロパティを使用することもできます。 |
参照
処理手順
方法 : 新しく作成されたデータ ファイルに対して読み書きする