如何使用输入范围!(dchar)是否在D2.0中使用标准DIN?

如何使用输入范围!(dchar)是否在D2.0中使用标准DIN?,d,D,我正在尝试编写通用代码,可以将任何字符流(dchars)lex到任何地方。。。无论是从一个文件还是从stdin到另一个文件或stdout 我该怎么做 似乎stdin和stdout与InputRange和OutputRange一起使用是痛苦的(因为我每次都必须手动包装它们),而且我不能使用std.stdio.Stream,因为它给我的是字节,而不是字符串。。。我找不到任何适配器可以轻松地从一个转换到另一个 因此,在我的程序中,我找不到一种有效的方法来使用stdin/stdout 是否有类似.NET

我正在尝试编写通用代码,可以将任何字符流(
dchar
s)lex到任何地方。。。无论是从一个文件还是从
stdin
到另一个文件或
stdout

我该怎么做

似乎
stdin
stdout
InputRange
OutputRange
一起使用是痛苦的(因为我每次都必须手动包装它们),而且我不能使用
std.stdio.Stream
,因为它给我的是字节,而不是字符串。。。我找不到任何适配器可以轻松地从一个转换到另一个

因此,在我的程序中,我找不到一种有效的方法来使用
stdin
/
stdout


是否有类似.NET的
TextReader
之类的东西可以将文本抽象为
InputRange!dchar
无论其输入是字符串、控制台还是文件?

采用
dchar
输入范围的适当功能是:

void func(范围)(范围输入)
if(isInputRange!Range&&is(ElementType!Range==dchar))
{}
但是,必须有一个从stdin获取输入的输入范围。有人说需要重做尚未完成的stdio/streaming。stdin有一个of
dchar