使用java语言编写一个程序,从命令行上接收两个文件名,比较两个文件的长度及内容。
时间: 2023-06-26 18:03:44 浏览: 92
前端上传多文件,携带多参数,java接收(省去频繁写一一对应的参数)(csdn)————程序.pdf
5星 · 资源好评率100%
以下是使用Java语言编写的比较两个文件长度及内容的程序:
```java
import java.io.*;
public class FileComparator {
public static void main(String[] args) {
if (args.length != 2) {
System.out.println("Usage: java FileComparator <file1> <file2>");
return;
}
String file1 = args[0];
String file2 = args[1];
try {
File f1 = new File(file1);
File f2 = new File(file2);
// Compare file lengths
if (f1.length() != f2.length()) {
System.out.println("Files are not the same length.");
return;
}
// Compare file contents
FileInputStream fis1 = new FileInputStream(file1);
FileInputStream fis2 = new FileInputStream(file2);
int b1, b2;
while ((b1 = fis1.read()) != -1 && (b2 = fis2.read()) != -1) {
if (b1 != b2) {
System.out.println("Files are not the same.");
return;
}
}
System.out.println("Files are the same.");
fis1.close();
fis2.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
程序的运行方式为在命令行输入以下命令:
```
java FileComparator <file1> <file2>
```
其中,`<file1>`和`<file2>`是要比较的文件名。程序会先比较两个文件的长度,如果长度不同则直接输出“Files are not the same length.”。如果长度相同,则继续比较文件内容,如果内容不同则输出“Files are not the same.”,否则输出“Files are the same.”。
阅读全文