用c++实现二进制方式打开指定的一个文件,在每一行前加行号,并且将结果输出到控制台上。
时间: 2024-09-25 08:08:56 浏览: 40
查看二进制文件的常用软件
在C++中,你可以使用`fstream`库来实现这个功能,特别是通过`ofstream`(输出流)来操作文件。这里是一个简单的示例,它会按照要求读取原文件的内容,添加行号,然后输出到控制台:
```cpp
#include <iostream>
#include <fstream>
#include <iomanip> // 需要包含iomanip来进行格式化输出
int main() {
std::string filename = "input.txt"; // 指定的文件名
std::ifstream inputFile(filename, std::ios::binary); // 以二进制模式打开输入文件
if (!inputFile) {
std::cerr << "Failed to open file!" << std::endl;
return 1;
}
std::ofstream outputFile("output.txt", std::ios::app); // 以追加模式创建输出文件
if (!outputFile) {
std::cerr << "Failed to create output file!" << std::endl;
return 1;
}
size_t lineNum = 1; // 行号从1开始
char buffer[4096]; // 用于临时存储读取的行
while (std::getline(inputFile, buffer)) { // 逐行读取
outputFile << std::setw(5) << std::right << lineNum++ << ": " << buffer << "\n"; // 添加行号并输出
}
inputFile.close();
outputFile.close();
std::cout << "Finished processing and wrote to 'output.txt'" << std::endl;
return 0;
}
```
在这个例子中,我们首先检查文件是否成功打开,然后逐行读取原始文件(假设是以文本形式存在),在每行前面加上对应的行号,再写入到新的输出文件中。最后关闭两个文件。
阅读全文