如何在fstream中使用引号?
How do I use quotation marks in fstream?
本文关键字:fstream 更新时间:2023-10-16
我想将一行输出到.plt
文件中,该文件使用双引号表示"one-D Hydro"
,到目前为止我遇到了这个问题。
#include <cstdlib>
#include <fstream>
using namespace std;
int main()
{
fstream gnuplot_file;
gnuplot_file.open ("sod.plt");
gnuplot_file<<"set title"<< ""one-D Hydro""<<std::endl;
gnuplot_file.close();
system("gnuplot.exe sod.plt");
return 0;
}
第11行将不允许它编译,因为我似乎不能关闭语句。顺便说一下,这个错误同样是无用的。
gnuplot_call.cpp|11|error: expected ';' before 'one'|
对于c++ 03(甚至C),使用反斜杠来转义字符串中的双引号:
gnuplot_file << "set title" << ""one-D Hydro"" << std::endl;
注意,gnuplot
可能还要求您转义一些字符,例如,如果您希望标题包含引号!
在c++ 11中,您可以使用原始字符串字面值,例如
gnuplot_file<< R"*(set title "one-D Hydro")*" << std::endl;
顺便说一句,如果你的操作系统和c++库提供了popen(3)和pclose
,你可能对它们感兴趣。您只需popen
gnuplot
进程并向它发送命令,最后pclose
-ing它。
尝试在试图添加双引号的代码中包含转义字符[即反斜杠]。例如:
""one-D Hydro""
顺便说一句,既然你已经为它定义了命名空间,为什么你要使用std::
呢?你可以直接使用endl.
相关文章:
- 在fstream期间忽略空行
- 使用fstream对txt文件中的数字进行循环
- 为什么 fstream 在打开带有格式的文件时会导致分段错误?
- 无法打开 fstream C++文件,即使它与 .cpp 位于同一位置
- 使 std::fstream 写入文件末尾,但从头开始读取
- 为什么当我在 std::string 中打开文件名的 fstream 时出现"no matching function"错误?
- 自定义 std::fstream,std::filebuf 的溢出和下溢函数未为每个字符调用
- 如何修复函数中的 fstream 文件输入以将正确的信息存储在结构数组中?
- fstream / ifstream / ofstream 对象如何转换为布尔值
- 使用命令的未定义引用<fstream>
- 如何检查文件是否已存在于 fstream C++中
- 如何正确使用 fstream 并在 char 数组中传递数据?
- 如何使用 fstream 的 .get 字符串?
- 使用 fstream 库并在屏幕上打印的文件有问题?
- Windows std::fstream 修改文件后打开()?
- 如何删除文件中的数字,通过 c++ fstream 的
- std::fstream 在 MSVC 和 G++ 上使用 UTF-8 的不同行为
- C++ 错误检查 fstream open() 命令和一般字符串流错误处理
- 在istream_iterator中使用后的 C++ FSTREAM obj 回滚
- 如何使用单个fstream创建、读取和写入文件