我一直在进行模块练习,我遇到了这段代码片段,它读取文本文件并打印出有关它的详细信息。
它工作正常,但我只是想知道如何在代码本身中提供文本文件的路径,而不是在命令行中给出路径。
以下是我的代码。
class Module06
{
public static void Exercise01(string[] args)
{
string fileName = args[0];
FileStream stream = new FileStream(fileName, FileMode.Open);
StreamReader reader = new StreamReader(stream);
int size = (int)stream.Length;
char[] contents = new char[size];
for (int i = 0; i < size; i++)
{
contents[i] = (char)reader.Read();
}
reader.Close();
Summarize(contents);
}
static void Summarize(char[] contents)
{
int vowels = 0, consonants = 0, lines = 0;
foreach (char current in contents)
{
if (Char.IsLetter(current))
{
if ("AEIOUaeiou".IndexOf(current) != -1)
{
vowels++;
}
else
{
consonants++;
}
}
else if (current == '\n')
{
lines++;
}
}
Console.WriteLine("Total no of characters: {0}", contents.Length);
Console.WriteLine("Total no of vowels : {0}", vowels);
Console.WriteLine("Total no of consonants: {0}", consonants);
Console.WriteLine("Total no of lines : {0}", lines);
}
}
答案 0 :(得分:2)
在static void Main
,请致电
string[] args = {"filename.txt"};
Module06.Exercise01(args);
答案 1 :(得分:1)
使用File.ReadAllText阅读文本文件要容易得多,那么您无需考虑关闭刚刚使用它的文件。它接受文件名作为参数。
string fileContent = File.ReadAllText("path to my file");
答案 2 :(得分:0)
string fileName = @"path\to\file.txt";