问题标签 [fstream]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 在 C++ 中读取和输出可能的 unicode torrent 内容?
我正在尝试编写一个简单的 C++ 程序来打开一个 torrent 文件(通过 argv [1] 传递),读取所有文件,然后逐字打印整个文件的内容而不做任何更改,它必须打印副本原始洪流。问题是,一些种子可能包含日语、俄语等(文件名、描述等)......当然还有带有哈希值的标准种子数据等等。
这样做的最佳方法是什么?到目前为止,我只输出了一部分内容,而且它似乎没有正确读取或打印数据......它是乱码什么的:
c++ - 使用 fstream 输入不正确的数据
我尝试使用 fstream 从文本文件中读取数据,但得到了错误的数据。
test.in
简直就是12
。
cout
读取4273190
。
有人可以解释为什么会这样以及如何解决吗?
c++ - 在哪里放置文件以便阅读?
嘿,我在哪里放置我试图使用 fstream 读取的文本文件?在本教程中,http://www.gamedev.net/reference/articles/article1127.asp,他们说
ifstream fin("input.txt");
“input.txt”在哪里?在我尝试通过执行此“C:\Users\XXXXXXX\Documents\test.in”来指向文件的路径之前。然而,这似乎不起作用,使用 fstream 输入不正确的数据。
我正在使用代码块。
提前致谢。
c++ - 用 fstream 写的文件有什么权限?
假设我创建了一个这样写的文件:
这个文件的权限是怎么确定的?我有一个程序在夜间运行,大约每分钟生成一次文件——有些是 0644,有些是 0660,我的代码中没有任何东西可以改变它。(我已经看到一些实现允许第三个参数来设置文件权限 - 我正在使用 gcc 4.1.2,它似乎不支持这一点)。
c++ - C ++头文件变量范围问题
我有 3 个与此问题相关的文件。file.h、file.C 和 user.C。
file.h 有一个私有成员 fstream 日志。
在 file.C 的构造函数中,它会打开日志。它不会在构造函数中执行此操作,而是构造函数调用函数 OpenLog()。
file.h 还有一个内联关闭函数:
CloseLog() {if (logs) logs.close();}
文件 user.C 有一个退出函数,它创建一个文件实例,然后调用 CloseLog。它在这一点上出现故障。我创建了一些其他的虚拟测试,看起来好像日志在某个地方丢失了......
从 file.C 到 user.C 然后返回到 file.C 会导致这种情况。如果我将 fstream 日志作为 file.C 中的全局日志,那么它可以工作 - 但我宁愿避免使用全局日志。
关于我应该在这里做什么的任何想法?如果我应该发布更多关于此的代码,请告诉我,我可以设置一些虚拟的东西来更好地演示这个。
**这里有更多代码,根据要求 - 我不能复制和粘贴,所以请原谅缺少它 **
我将调用这些类 helpME.h、helpME.C 和 user.C
//helpME.h
#ifndef _helpME_H
#define _helpME_H#include <iostream>
#include <fstream>
//各种包含类 helpME {
私人:
fstream 日志;公共:
无效 CloseLog() {if (logs) logs.close();}
};
#万一//结束帮助ME.h
//helpME.C
void helpME::helpME(int argc, char** argv)
{
//各种代码
OpenLog();
}void helpME::OpenLog()
{
//logname 在上面设置,我之前有一个打印语句显示这是正确的
logs.open(logname, ios::in | ios::out | ios::trunc);
}//结束帮助ME.C
//user.C
void user::quitHelpME(item)
{
helpME* hME = (helpME*) item;
hME->关闭日志();
}//最终用户.C
再次 - 请原谅缺乏清晰度,我想我可能只是通过添加这个来混淆更多的东西......这个代码在另一个盒子上,不能被复制。
c++ - C++ ifstream UTF8 第一个字符
为什么保存为 UTF8(在 Notepad++ 中)的文件在我在 c++ 程序中打开的 fstream 的开头有这个字符?
´╗┐
我不知道它是什么,我只知道当我保存为 ASCII 时它不存在。更新:如果我将它保存为 UTF8(没有 BOM),它就不存在了。
如何在 c++ 中检查文件的编码(ASCII 或 UTF8,其他所有内容都将被拒绝;))。就是这些字符吗?
谢谢!
c++ - std::fstream 不会打开当前进程的文件,但是 open() 会吗?
我正在尝试打开当前进程的可执行文件以进行读写操作(我在可执行文件中附加了其他数据),但是 std::fstream 不会在 ios::in | 中打开文件 ios::out | ios::binary 模式,即使 open() 会(设置了 O_RDWR 标志)。
有谁知道为什么 std::fstream 不会打开文件,而 open() 会,如果是这样,我怎样才能让 std::fstream 打开文件?
c++ - getline 返回空字符串
我在使用 fstream 的 getline 指令时遇到问题。这是我的代码片段:
此代码应在第一次运行时打开任务文件,并在下一次迭代时打开保存文件。保存文件在每个循环结束时创建。至少它应该像这样工作。因为,第一次一切正常,但在下一次迭代中,“mission_file.getline(buffer_line, 256);” 返回一个空行,使程序崩溃。此外,如果 boolean_1 以 false 开始,则循环工作正常,直到下一个循环。
我已经检查了是否存在所需的“.txt”,mission_file 和 save_file 都返回 is_open() true。
c++ - 如何将 fstream 中的 128 个字节准确地读取到字符串对象中?
如何将 fstream 中的 128 个字节准确地读取到字符串对象中?
我编写了一些代码来读取文件的前 128 个字节并打印它,然后是文件的最后 128 个字节并打印它。最后一部分有效,因为您可以轻松地迭代到 EOF,但是我如何从前面获得 128 个字节呢?下面的代码不起作用,因为您无法将 128 添加到 ifstream 迭代器,它不可索引,只能递增(似乎)。
当然我可以创建一个迭代器和 *++ 128 次,但必须有一个简单的单行方法来做到这一点,对吧?