使用D语言读取文件中的字符
reading characters in a file using D language
我遇到了无法解决的错误问题。我的程序的目的是计算文件中的字符 "test" 但我一直收到此错误 "function core.stdc.stdio.getc (shared(_IO_FILE)* stream) is not callable using argument types (File)"
这是我的代码:
import std.stdio;
import std.file;
import std.string;
import core.stdc.stdio;
void main()
{
char ch;
int charCount;
File file = File("test.txt","w");
file=File("test,txt","r");
while(!file.eof())
{
ch = getc(file);
charCount++;
}
file.close();
}
std.stdio.File
不是 C 文件句柄,但您使用的是 C 库中的 getc
,它需要一个。
最简单的方法是使用 readText from std.file,它一次读取整个文件:
int count = "test.txt".readText.length;
因为它 returns 一个字符数组,你可以只取该数组的长度来计算你的计数。
我遇到了无法解决的错误问题。我的程序的目的是计算文件中的字符 "test" 但我一直收到此错误 "function core.stdc.stdio.getc (shared(_IO_FILE)* stream) is not callable using argument types (File)"
这是我的代码:
import std.stdio;
import std.file;
import std.string;
import core.stdc.stdio;
void main()
{
char ch;
int charCount;
File file = File("test.txt","w");
file=File("test,txt","r");
while(!file.eof())
{
ch = getc(file);
charCount++;
}
file.close();
}
std.stdio.File
不是 C 文件句柄,但您使用的是 C 库中的 getc
,它需要一个。
最简单的方法是使用 readText from std.file,它一次读取整个文件:
int count = "test.txt".readText.length;
因为它 returns 一个字符数组,你可以只取该数组的长度来计算你的计数。