2010-08-20 69 views
3

我试图遵循一个简单的教程,并不能得到下面的代码工作:文件I/O在d编程语言

void main(string args[]) 
{ 
    auto f = File("test.txt", "w"); 
    f.writeln("Hello, Worlds!"); 
} 

我在Windows上使用DMD编译器。

+0

d版本1或2? – kennytm 2010-08-20 07:22:47

+2

为什么不呢? 程序崩溃了吗?程序是否仅仅不正常工作? 编译失败吗?编译器*崩溃*?你知道编译器安装正确吗?你使用的是什么版本的语言? – 2010-08-20 07:25:37

+0

编译失败。我想,我正在使用D2。编译错误是: (5):错误:未识别的标识符文件 (5):错误:函数预期before(),而不是_error_类型_error_ (6):错误:函数预期before(),而不是__error类型TOK149 – lowerkey 2010-08-20 16:57:04

回答

18

如果使用的是D2,则需要import std.stdio;

import std.stdio; 
void main(string args[]) 
{ 
    auto f = File("test.txt", "w"); 
    f.writeln("Hello, Worlds!"); 
} 

如果使用D1时,File类是std.stream和API略有不同:

import std.stream; 
void main() { 
    auto f = new File("test.txt", FileMode.Out); 
    f.writeLine("Hello, Worlds!"); 
}