在Java中处理二进制数据主要涉及数值转换和文件操作,以下是核心方法与示例:
一、数值进制转换
使用`Integer`类提供的方法:
```java
int num = 255;
String binaryStr = Integer.toBinaryString(num); // 二进制
String octalStr = Integer.toOctalString(num); // 八进制
String hexStr = Integer.toHexString(num); // 十六进制
```
其他进制转十进制
使用`Integer.parseInt(String s, int radix)`方法:
```java
String hexStr = "1A3F";
int decimal = Integer.parseInt(hexStr, 16); // 十六进制转十进制
```
二、二进制文件读写
写入二进制文件
使用`FileOutputStream`类:
```java
String filePath = "binary_file.bin";
byte[] data = {0x01, 0x02, 0x03};
try (FileOutputStream out = new FileOutputStream(filePath)) {
out.write(data);
} catch (IOException e) {
e.printStackTrace();
}
```
读取二进制文件
使用`FileInputStream`类:
```java
private static double readBinDouble(FileInputStream fis) throws IOException {
byte[] bytes = new byte;
fis.read(bytes);
return Double.parseDouble(new String(bytes, 0, 8, "0x"));
}
```
三、位运算示例
使用`Integer`类进行位操作:
```java
int a = 255; // 二进制 11111111
int b = 128; // 二进制 10000000
int c = a & b; // 二进制 10000000 (80)
int d = a | b; // 二进制 11111111 (255)
int e = a ^ b; // 二进制 01111111 (191)
int f = ~a; // 二进制 00000000 (0)
```
四、注意事项
负数处理: Java采用二进制补码表示负数,`Integer.toBinaryString`会显示补码形式。 资源管理
以上方法覆盖了Java中二进制转换和文件操作的核心需求,可根据具体场景选择使用。