java校验和算法代码 java校验和算法代码的区别

java 程序怎么计算.hex文件校验和?

JAVA 读进来,一样相加

创新互联-专业网站定制、快速模板网站建设、高性价比汤原网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式汤原网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖汤原地区。费用合理售后完善,10年实体公司更值得信赖。

int n=0xff(0x01 +~(0x02 + 00 + 00 + 0x02 + 0x12 + 00));

String a=Integer.toHexString(n);

System.out.println(a);

用java实现UDP校验和计算

public static void main(String[] arg) {

String str = "hello";

System.out.println(toByte(str));

// 得到结果:byte[] sbytes = { 0X68, 0X65, 0X6c, 0X6c, 0X6f };

}

private static String toByte(String str) {

byte[] bytes = str.getBytes();

StringBuffer sb = new StringBuffer();

sb.append("byte[] sbytes = { ");

for (int i = 0; i bytes.length; i++) {

sb.append(String.format("0X%s", Integer.toHexString(bytes[i])));

if (i bytes.length - 1) {

sb.append(", ");

}

}

sb.append(" };").append("\r\n");

return sb.toString();

}

JAVA怎么做CRC校验的程序

实现方法:最简单的校验就是把原始数据和待比较数据直接进行比较,看是否完全一样这种方法是最安全最准确的。同时也是效率最低的。

应用例子:龙珠cpu在线调试工具bbug.exe。它和龙珠cpu间通讯时,bbug发送一个字节cpu返回收到的字节,bbug确认是刚才发送字节后才继续发送下一个字节的。 实现方法:在数据存储和传输中,字节中额外增加一个比特位,用来检验错误。校验位可以通过数据位异或计算出来。

应用例子:单片机串口通讯有一模式就是8位数据通讯,另加第9位用于放校验值。

bcc异或校验法(block check character)

实现方法:很多基于串口的通讯都用这种既简单又相当准确的方法。它就是把所有数据都和一个指定的初始值(通常是0)异或一次,最后的结果就是校验值,通常把它附在通讯数据的最后一起发送出去。接收方收到数据后自己也计算一次异或和校验值,如果和收到的校验值一致就说明收到的数据是完整的。

校验值计算的代码类似于:

unsigned uCRC=0;//校验初始值

for(int i=0;iDataLenth;i++) uCRC^=Data[i];

适用范围:适用于大多数要求不高的数据通讯。

应用例子:ic卡接口通讯、很多单片机系统的串口通讯都使用。 (Cyclic Redundancy Check)

实现方法:这是利用除法及余数的原理来进行错误检测的

java里如何正确计算检验和

import java.security.MessageDigest;

public class MD5HashingExample 

{

public static void main(String[] args)throws Exception

{

String password = "123456";

MessageDigest md = MessageDigest.getInstance("MD5");

md.update(password.getBytes("UTF-8"    )); //or GBK

byte byteData[] = md.digest();

//convert the byte to hex format method 1

StringBuffer sb = new StringBuffer();

for (int i = 0; i  byteData.length; i++) {

sb.append(Integer.toString((byteData[i]  0xff) + 0x100, 16).substring(1));

}

System.out.println("Digest(in hex format):: " + sb.toString());

//convert the byte to hex format method 2

StringBuffer hexString = new StringBuffer();

for (int i=0;ibyteData.length;i++) {

String hex=Integer.toHexString(0xff  byteData[i]);

  if(hex.length()==1) hexString.append('0');

  hexString.append(hex);

}

System.out.println("Digest(in hex format):: " + hexString.toString());

}

}

求Java大神给个代码!计算验证条形码

public class Ean13Barcode {

private String code;

public Ean13Barcode(String code) {

super();

this.code = code;

}

public String encode() {

if (null == code) {

return "";

}

char[] codes = code.toCharArray();

int sum = 0;

for (int i = 0; i codes.length; i++) {

int num = codes[i] - '0';

if (isEven(num)) {

sum += num;

} else {

sum += num * 3;

}

}

int x = sum % 10;

return code + (x == 0 ? 0 : 10 - x);

}

private boolean isEven(int x) {

return x % 2 == 0;

}

public static void main(String[] args) {

System.out.println(new Ean13Barcode("692223361219").encode());

}

}

java 如何计算校验和,比如如下这段代码如何修改?

您好,1、 编写一个计算机程序用来计算一个文件的16位效验和。最快速的方法是用一个32位的整数来存放这个和。记住要处理进位(例如,超过16位的那些位),把它们加到效验和中。

要求:1)以命令行形式运行:check_sum infile

其中check_sum为程序名,infile为输入数据文件名。

2)输出:数据文件的效验和

附:效验和(checksum)

 原理:把要发送的数据看成二进制整数序列,并计算他们的和。若数据字节长度为奇数,则在数据尾部补一个字节的0以凑成偶数。

 例子:16位效验和计算,下图表明一个小的字符串的16位效验和的计算。

为了计算效验和,发送计算机把每对字符当成16位整数处理并计算效验和。如果效验和大于16位,那么把进位一起加到最后的效验和中。


本文标题:java校验和算法代码 java校验和算法代码的区别
文章URL:http://csdahua.cn/article/doosdio.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流