当前位置: 首页 > ops >正文

如何使用java把文件转成十六进制字符串

在Java中如何接收通过C#代码发送的文件流

byte[] data = File.ReadAllBytes(Utils.MrFile.PathName);
pdfFile.data = BitConverter.ToString(data);

将以上C#代码使用java实现

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;public class FileToHexConverter {// 用于存储十六进制字符的数组private final static char[] HEX_ARRAY = "0123456789ABCDEF".toCharArray();public static void main(String[] args) {try {// 假设Utils.MrFile.PathName是一个文件路径字符串String filePath = "your_file_path_here";  // 替换为实际文件路径// 读取文件所有字节byte[] data = Files.readAllBytes(Paths.get(filePath));// 将字节数组转换为十六进制字符串String hexString = bytesToHex(data);// 打印结果或赋值给pdfFile.dataSystem.out.println(hexString);// 如果pdfFile是一个类的实例,可以这样赋值:// pdfFile.setData(hexString);} catch (IOException e) {System.err.println("读取文件出错: " + e.getMessage());e.printStackTrace();}}// JDK 1.8兼容的字节数组转十六进制字符串方法private static String bytesToHex(byte[] bytes) {char[] hexChars = new char[bytes.length * 3]; // 每个字节需要3个字符(2个hex+1个分隔符)for (int i = 0; i < bytes.length; i++) {int v = bytes[i] & 0xFF;hexChars[i * 3] = HEX_ARRAY[v >>> 4];    // 高4位hexChars[i * 3 + 1] = HEX_ARRAY[v & 0x0F]; // 低4位hexChars[i * 3 + 2] = '-';               // 添加分隔符,模拟C#的BitConverter.ToString行为}return new String(hexChars, 0, hexChars.length - 1); // 去掉最后一个分隔符}
}

http://www.xdnf.cn/news/13156.html

相关文章:

  • DevSecOps实践:CI/CD流水线集成SAST工具详解
  • 8.1.排序的基本概念
  • 麒麟系统集成开发环境Kylin-IDE初体验,菜鸟小白入门教程
  • 基于vue+js的微信小程序高血压健康管理系统的设计与实现(源码+论文+调试+安装+售后)
  • 在微信小程序中使用骨架屏
  • 微信小程序之bind和catch
  • USB over Network技术重塑中国电气装备集团U盾智能化管控
  • Vue大文件上传:让你的文件秒传、断点续传、分片上传---需要后端支持--案例后端使用node
  • ArcGIS Pro 3.4 二次开发 - 流图层
  • 如何对目标检测算法RT-DETR进行创新和改进:突破瓶颈,提升性能!
  • docker compose v2版本创建和运行容器
  • HTML 列表、表格、表单 综合案例
  • ES6从入门到精通:前言
  • Linux之nginx部署网站
  • MongoDB 数据库应用
  • Win11无法安装Unity5.5.0f3怎么解决?虚拟机中如何配置?Win7怎么安装最新版VMware Tools?来这里教你完美解决!
  • windows上tensorrt国内镜像下载和安装教程
  • 金融科技的数字底座
  • Linux 信号机制深度解析:从基础概念到实战应用
  • 小程序的工具库-miniprogram-licia
  • 状态管理详解:Context API、Redux、Recoil 和 Zustand 在 React Native 中的应用
  • Stable Diffusion WebUI 本地部署指南(Windows 11 + RTX 4060 Ti)
  • 西电计组第六章-CPU
  • Flask RESTful 示例
  • 增加Label Verified
  • 《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》
  • 机器学习sklearn |(逻辑回归)求解器(Solver) :优化算法的实现,用于寻找模型参数的最优解
  • Spring boot应用监控集成
  • 鹰盾播放器:安全与用户体验的精妙平衡
  • 互联网大数据求职面试:从Zookeeper到数据挖掘的技术探讨