二进制数据的输入方式因编程语言和场景不同而有所差异,以下是主要方法:
一、C语言中输入二进制数
使用`scanf`函数时,需在格式字符串中指定`%b`或`%B`来读取二进制数。例如:
```c
include
int main() {
unsigned int binaryNum;
printf("Enter a binary number: ");
scanf("%b", &binaryNum);
printf("You entered the binary number: %dn", binaryNum);
return 0;
}
```
用户输入的二进制数(如`1010`)将被存储在`binaryNum`变量中。
二、Java中读写二进制文件
读取二进制文件 使用`DataInputStream`类,通过`FileInputStream`构造对象后,调用`read()`方法读取数据。例如:
```java
import java.io.FileInputStream;
import java.io.DataInputStream;
public class ReadBinaryFile {
public static void main(String[] args) throws IOException {
FileInputStream fis = new FileInputStream("input.dat");
DataInputStream dis = new DataInputStream(fis);
byte data = dis.read(); // 读取单个字节
dis.close();
}
}
```
写入二进制文件
使用`DataOutputStream`类,通过`FileOutputStream`构造对象后,调用`write()`方法写入数据。例如:
```java
import java.io.FileOutputStream;
import java.io.DataOutputStream;
public class WriteBinaryFile {
public static void main(String[] args) throws IOException {
FileOutputStream fos = new FileOutputStream("output.dat");
DataOutputStream dos = new DataOutputStream(fos);
dos.write(65); // 写入字符'A'
dos.close();
}
}
```
三、其他注意事项
C语言: 若需从文件读取二进制数据,可使用`fread`函数,例如: ```c FILE *file = fopen("binary_file.bin", "rb"); unsigned char buffer; fread(buffer, sizeof(char), sizeof(buffer), file); fclose(file); ``` Java
以上方法覆盖了常见的二进制数据输入场景,可根据具体需求选择合适的方式。