十六进制显示文件

本文介绍了如何用C++编写一个程序,该程序能读取文件内容并以十六进制的形式展示。程序允许通过命令行参数指定输出路径,将十六进制内容保存到文件。虽然不支持文件修改功能,但作为读取和显示十六进制内容的基础模块十分有用。
摘要由CSDN通过智能技术生成

突发奇想,写了三个小时,可以读取文件并以十六进制形式显示文件内容。

如果打开程序带有参数 -o OutputPath 则可以将十六进制形式保存为磁盘文件,否则显示在屏幕上。

代码如下:

/*
Open an file into binary stream

Note that argc counts .\binaryfile.exe -o outputFilePath
So the argc is 3
argv[0]==.\binaryfile.exe
argv[1]== -o
argv[2]== outputFilePath
*/

#include<iostream>
#include<fstream>
#include<iomanip>
#include<cstring>
using namespace std;
int main(int argc,char *argv[])
{
	char strPath[256]="";
	fstream file;
	char *buffer=NULL;
	int intHex=0;
	int length=0;
	int i,j;
	unsigned long long addr=0;

	cout<<"Enter file path:"<<endl;
	cin>>strPath;

	file.open(strPath,fstream::in|fstream::out|fstream::binary);

	if (!file.is_open()){
		cout<<"Open file error!"<<endl;
		file.close();
		return -1;
	}

	file.seekg(0,fstream::end);
	length=file.tellg();//get the le
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值