根据发明语言的时间和语言的结构,这种转变可能意味着另一种方式,但我对我的java能力相当自信,或者至少我对它很好..但我现在试着去C ++,我遇到了困难。
在java中,读取文本文件可以通过声明一个新文件对象,然后是一个扫描器(或类似的类)来读取它,或读取器类,(缓冲读取器,输入流读取器,文件读取器) ......变化列表仍在继续)但是现在我试图在C ++中实现这一点,这是程序的一个非常基本的功能,而且我的代码不起作用。我的代码是:
#include <iostream>
#include <fstream>
using namespace std;
int main () {
ofstream myfile;
myfile.open ("example.txt");
myfile << "This text appears in the file.\n";
myfile.close();
return 0;
}
我忘记了什么?对我来说似乎很完整,但话说回来,我几乎不知道任何C ++ ......
答案 0 :(得分:4)
该代码是正确的。您确定没有创建example.txt文件吗?例如,如果您正在使用visual studio,那么它将不在Debug或Release文件夹中,但会显示一级,因为默认情况下工作目录将是这样。
答案 1 :(得分:0)
我认为你真正的问题是如何在熟悉Java的情况下学习C ++。为此,我会推荐这本书Accelarated C++。这是对C ++的一个很好的介绍。然而,它是密集的,需要一些研究。我花了大约两个月的时间来工作。
如果您没有时间或动机,可以从Effective C++开始。它基本上是一系列的做法和注意事项,可以帮助您避免常见的初学者错误。
答案 2 :(得分:-3)
Java行李是一种责任,而非资产。用C ++思考,你可以使这段代码更简单,更安全:
#include <fstream>
int main () {
std::ofstream myfile("example.txt");
myfile << "This text appears in the file.\n";
return 0; // you can skip this too
}
甚至更短:
#include <fstream>
int main () { std::ofstream("example.txt") << "This text appears in the file.\n";}