怎么将十六进制字符串:0020000000c00012 转换成:0x00 0x20 0x00 0x00 0x00 0xc0 0x00 0x12 .

uglyFairy 2007-07-12 01:18:08
怎么将十六进制字符串:0020000000c00012 转换成:0x00 0x20 0x00 0x00 0x00 0xc0 0x00 0x12 . 最好有代码.
...全文
436 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
有谁用过 byte 了?
IhaveGotYou 2007-07-12
  • 打赏
  • 举报
回复
Byte的范围是:-127到128,你上面的0xc0对于Byte,已经溢出.
参考代码:
package net.oicp.sunflowerbbs;

public class Ahex {

static Byte[] Convert(String str) {
int len = str.length();
Byte[] result = new Byte[(int)Math.round(len/2.0D)];
int k=0;
for (int i = 0; i < len; i += 2) {
String tmp = str.substring(i, i + 2 > len ? i + 1 : i + 2);
Long hex = Long.parseLong(tmp, 16);
result[k]=hex.byteValue();
System.out.println(result[k]);
k++;
}

return result;
}

public static void main(String[] args) {

Convert("0020000000c00012");

}

}
  • 打赏
  • 举报
回复
忘记是字符串了,改一下:

String s = "0020000000c00012";
long num = Long.parseLong(s, 16);
int k = s.length() / 2;
String[] str = new String[k];
for (int i = k - 1; i >= 0; i--) {
  str[i] = String.format("0x%02x", (num & 0xffL << (i * 8)) >> (i * 8));
  System.out.print(str[i] + " ");
}
  • 打赏
  • 举报
回复
long num = 0x0020000000c00012L;
String[] str = new String[8];
for(int i = 7; i >= 0; i--) {
  str[i] = String.format("0x%02x", (num & 0xffL << (i*8)) >> (i*8));
  System.out.print(str[i] + " ");
}
goziung 2007-07-12
  • 打赏
  • 举报
回复
不好意思,substring(int beginIndex, int endIndex)方法名字中string的“S”是小写的,特此更正
goziung 2007-07-12
  • 打赏
  • 举报
回复
你把整个字符串string拆开为8个两位的字符串数组,然后在前面加“0x”,再转换为相应的应用类型,行不?
用String类里的toCharArray() 或者 subString(int beginIndex, int endIndex)都能实现
bug008 2007-07-12
  • 打赏
  • 举报
回复
该问题的目的是将16位十六进制数据转换成8个字节数据
bug008 2007-07-12
  • 打赏
  • 举报
回复
注意:
实现语言:Java
  • 打赏
  • 举报
回复
需要
#include<sstream>
#include<algoritm>
  • 打赏
  • 举报
回复
stringstream conv;
conv<<hex;
conv<<"0020000000c00012";
unsigned char sz[8]={0};
long long *xx = (long long*)sz;
conv>> *xx;
reverse( sz , sz + 8 );
这里的sz就是你所需要的字符串了,
一、认知筑基:搭建系统框架,规避入门误区 提升AI技能首重系统认知。课程拆解AI核心原理,明确各类工具应用边界与场景,帮助搭建学习框架、规避常见误区,梳理学习优先级,为工具实操筑牢基础。 二、工具实操:精通全能应用,突破技能瓶颈 工具实操是AI技能提升核心。课程以“分类教学+协同实战”模式,覆盖主流AI工具全场景应用,拆解基础至进阶技巧,助力一套课程精通全品类工具。针对视觉生成与智能对话工具,分别讲解核心技巧与提示词设计,实现多工具协同赋能突破。 三、专项突破:掌握爆款逻辑,打通写作秘籍 深耕专项技能可强化竞争力。课程配套AI写作秘籍与爆款公式,拆解优质内容创作逻辑,提炼核心方法论,提供全流程写作指导,规避AI写作短板,助力掌握爆款技巧,适配多元场景。 四、实战落地:链接商业场景,实现价值转化 AI技能的终极目标是商业落地与价值转化。课程商业实战模块聚焦职场与运营场景,讲解AI工具在数据整理、营销优化等环节的应用,搭建标准化流程实现降本增效,通过案例拆解构建价值转化闭环。 AI时代,技能迭代速率决定成长与职业高度。该课程以“从零到精通”为定位,覆盖全学习维度,助力学习者从零基础蜕变为AI多面手,让AI技术赋能效率提升与职业发展。
智能面试刷题系统是一个基于前后端分离架构的企业级在线学习平台,主要用于帮助用户高效准备技术面试。该系统采用Spring Boot作为后端框架,Next.js作为前端框架,结合Redis、MySQL和Elasticsearch等核心技术,构建了一个功能完善、性能优越的面试刷题解决方案。 系统核心功能包括题库管理、智能检索、在线刷题和数据分析四大模块。管理员可以通过后台管理系统创建和维护题库、题目及详细题解,支持多种题型和难度分类。用户端提供完整的注册登录功能,用户登录后可以使用分词检索技术快速查找相关题目,系统基于Elasticsearch实现高效的全文搜索功能。在线刷题模块支持实时代码编辑和运行,用户可以查看详细的解题思路和参考答案。数据分析模块通过可视化日历图展示用户的刷题记录和学习进度,帮助用户合理安排学习计划。 在技术实现方面,系统采用分层架构设计,运用单例模式、工厂模式和观察者模式等多种设计模式,确保代码的可维护性和扩展性。性能优化方面,系统集成了Druid数据库连接池管理数据库连接,使用HotKey技术进行热键探测和缓存优化,通过Redis缓存频繁访问的数据,显著提升系统响应速度。安全性方面,系统采用Sa-Token进行权限认证和会话管理,集成Sentinel实现流量控制和熔断机制,同时具备动态IP黑白名单过滤、同端登录冲突检测和分级反爬虫策略,全方位保障系统安全。 该系统特别适合作为计算机相关专业的毕业设计项目,提供了完整的源码和详细的系统设计文档。项目从需求分析、系统设计到编码实现的全过程都符合企业级开发标准,学生可以通过学习该项目掌握前后端分离开发、微服务架构、性能优化和安全防护等关键技术。系统采用服务端渲染技术提升首屏加载速度,优化用户体验,同时支持响应式设计,适配多种终端设备。 对于正在准备毕业设计的学生来说,这个系统不仅提供了完整的技术实现方案

62,629

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧