12
using (var writer = File.CreateText(fullFilePath))
{
   file.Write(fileContent);
}

上記のコードから、ファイル サイズを知ることができますStreamWriterか?

4

5 に答える 5

26

はい、できます。次のことを試してください。

long length = writer.BaseStream.Length;//will give unexpected output if autoflush is false and write has been called just before

注:プロパティはすぐには書き込まないためwriter.BaseStream.Length、予期しない結果を返す可能性があります。StreamWriter必要な期待される出力を取得するためにキャッシュしますAutoFlush = true

writer.AutoFlush = true; or writer.Flush();
long length = writer.BaseStream.Length;//will give expected output
于 2013-08-08T13:43:20.550 に答える
3

特定のファイルのプロパティが必要な場合に探しているのは FileInfo だと思います。

FileInfo info = new FileInfo(fullFilePath);
//Gets the size, in bytes, of the current file.
long size = info.Length;
于 2013-08-08T13:41:49.983 に答える
1

どうぞ!System.IO 名前空間で FileInfo クラスを使用するだけです:)

using System.IO;

var fullFilePath = "C:\path\to\some\file.txt";
var fileInfo = new FileInfo(fullFilePath);

Console.WriteLine("The size of the file is: " + fileInfo.Length);
于 2013-08-08T13:41:37.823 に答える
0

いいえ、StreamWriter 自体からではなく、ファイルのサイズを知ることができます。FileInfo の Lengthを使用する必要があります。

于 2013-08-08T13:45:17.337 に答える
0

このコードを試していただけますか?

var size = writer.BaseStream.Length;

*writer は StreamWriter です

于 2013-08-08T13:42:48.200 に答える