我收到一个文件,我需要压缩这个文件并将压缩文件的文件名作为参数传递给另一个方法。
File fileName = new File("fileA");
如何快速压缩此文件并获取压缩文件的文件名?
谢谢!
我收到一个文件,我需要压缩这个文件并将压缩文件的文件名作为参数传递给另一个方法。
File fileName = new File("fileA");
如何快速压缩此文件并获取压缩文件的文件名?
谢谢!
你可以使用这个库:Snappy for java
先把文件读成String,然后压缩:
String input = FileUtils.readFileToByteArray(new File("fileA"));
byte[] compressed = Snappy.compress(input.getBytes("UTF-8"));
String result = new String(uncompressed, "UTF-8");
最后将其写入您选择的文件:
FileUtils.writeStringToFile(new File("targetFile"),result,"UTF-8")
为了简洁起见,我在这里使用了Apache Common FileUtils。