1. 首页 > 科技

c++怎么将txt里的16进制还原? c语言10进制转16进制

c++怎么将txt里的16进制还原?c语言10进制转16进制

如何用Matlab将txt中的许多16进制数转化为10进制数

%%%%%%16进制转10进制 转化方法一%%%%%%%%%%%%

a=textread('c:\a.txt','%s')';%以字符形式打开文件

alpha=hex2dec(a)'; %16进制转化为10进制数,存入alpha矩阵

%%%%%%%16进制转10进制 转化方法二%%%%%%%%%%%

[wenjian_ming,lujing_ming] = uigetfile('c:\a.txt','导入数据');

fid=fopen(strcat(lujing_ming,wenjian_ming),'r');

data=[];

while ~feof(fid)

m=fscanf(fid,'%3x',[1 inf]);

data=[data;m]; %将读出的数据存入data矩阵中

end

alpha=data;

%%%%%%%保存文件方法一%%%%%%%%%%%%%%

dlmwrite('c:\b.txt',alpha,'delimiter', ' ') %将得出数据存入新的b.txt文档

%%%%%%%保存文件方法二%%%%%%%%%%%%%%

fid=fopen('c:\d.txt','w');

fprintf(fid,'%d ',alpha');

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

alpha2=alpha(1:2:length(alpha)-mod(length(alpha)+1,2)); %将奇数元素提取出来

dlmwrite('c:\c.txt',alpha2,'delimiter', ' ') %将得出数据存入新的c.txt文档

%%%%%%%画图%%%%%%%%%%%%%%

plot(1:length(alpha2),alpha2) %画图

c#中怎样将16进制转换成十进制

1、Convert.ToInt32("FF", 16)

2、如果转换的数值太大防止溢出也可Convert.ToInt64("数值", 16)

3、第三种

/// <summary>

/// 十六进制换算为十进制

/// </summary>

/// <param name="strColorValue"></param>

/// <returns></returns>

public static int GetHexadecimalValue(String strColorValue)

{

char[] nums = strColorValue.ToCharArray();

int total = 0;

try

{

for (int i = 0; i < nums.Length; i++)

{

String strNum = nums[i].ToString().ToUpper();

switch (strNum)

{

case "A":

strNum = "10";

break;

case "B":

strNum = "11";

break;

case "C":

strNum = "12";

break;

case "D":

strNum = "13";

break;

case "E":

strNum = "14";

break;

case "F":

strNum = "15";

break;

default:

break;

}

double power = Math.Pow(16, Convert.ToDouble(nums.Length - i - 1));

total += Convert.ToInt32(strNum) * Convert.ToInt32(power);

}

}

catch (System.Exception ex)

{

String strErorr = ex.ToString();

return 0;

}

return total;

}

VC怎样把字符转换成16进制ASKII码

// 10进制转换为其他进制(不大于16进制),数制转换

#include <iostream>

using namespace std ;

void main()

{

char b[17]="0123456789ABCDEF";

int i=0,h,n,c[10];int m;char mc;

cout<<"输入类型:字符按0;十进制数按1"<<endl;

cin>>m;

if(m){

cout<<"输入一个十进制数:";

cin>>m;

}else{

cout<<"输入一个字符:";

cin>>mc;

m=mc;

}

cout<<"输入要转换为几进制:";

cin>>h;

do{

c[i++]=m%h;

}while((m=m/h)!=0);

cout<<"得到"<<h<<"进制数为:";

for(--i;i>=0;--i)

{

n=c[i];

cout<<b[n];

}

cout<<endl;

}

c语言中16进制转换为十进制

最简单的使用scanf()函数和printf()函数进行格式转换,以16进制格式输入,再以10进制格式输出。

程序代码如下:

#include<stdio.h>

int main()

{

int a=0;

int i=0;

scanf("%x",&a);

printf("%d",a);

return 0;

运行结果:

扩展资料:

scanf函数与printf函数的用法很像,都是以格式化的形式进行操作,例如上述程序中scanf("%x", &a);就是将输入数据以十六进制格式存储到变量a中。

"%x"是将字符串A23CD以十六进制形式输入a中,如果将"%x"换成为"%d"的话,就是将字符串A23CD以十进制形式输入a中,这显然是错误的,因为将A23CD转换为十进制的时候,无法解析A,CD等字符,所以得出的结果就是错误的。