java ascii 文件_如何使用java解码ascii文件中的comp 3压缩字段?

我有一个从遗留系统中提取的庞大的大型机文件 . 该文件以ascii格式编码 . 我想将其转换为comp3 . java中是否有可用的算法来做到这一点?另外,我需要有关如何解压缩comp3字段的帮助 . 我尝试了一个java代码解压缩comp3但我发现不正确的结果

请参阅代码以解压缩comp3字段

import java.math.BigInteger;

import java.nio.file.Files;

import java.nio.file.Path;

import java.nio.file.Paths;

/**

* Converts between integer and an array of bytes in IBM mainframe packed

* decimal format. The number of bytes required to store an integer is (digits +

* 1) / 2. For example, a 7 digit number can be stored in 4 bytes. Each pair of

* digits is packed into the two nibbles of one byte. The last nibble contains

* the sign, 0F for positive and 0C for negative. For example 7654321 becomes

* 0x76 0x54 0x32 0x1F.

**/

public class PackedDecimalToComp {

public static void main(String[] args) {

try {

// test.u

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用zip4j库可以创建、读取和修改ZIP文件,但是它不支持修改压缩后的文件后缀名。 ZIP文件格式是一种归档文件格式,其包含多个文件和目录,但不会保留文件的扩展名。因此,更改ZIP文件文件扩展名不会更改解压缩后的文件的扩展名。 如果要更改ZIP文件文件的扩展名,您可以将文件压缩到临时文件,修改文件名,然后使用zip4j库重新压缩文件。 以下是Java使用zip4j库进行ZIP文件压缩压缩的示例代码: ```java import net.lingala.zip4j.ZipFile; import net.lingala.zip4j.exception.ZipException; import net.lingala.zip4j.model.FileHeader; import net.lingala.zip4j.model.ZipParameters; import java.io.File; import java.util.List; public class Zip4jExample { public static void main(String[] args) throws ZipException { // 解压缩ZIP文件 ZipFile zipFile = new ZipFile("example.zip"); String destFolder = "unzip/"; if (!zipFile.isValidZipFile()) { throw new ZipException("Invalid ZIP file"); } zipFile.extractAll(destFolder); // 修改文件名 File fileToRename = new File(destFolder + "example.txt"); File newFile = new File(destFolder + "example2.csv"); boolean renamed = fileToRename.renameTo(newFile); if (!renamed) { throw new RuntimeException("Failed to rename file"); } // 压缩文件夹 ZipParameters parameters = new ZipParameters(); parameters.setCompressionMethod(Zip4jConstants.COMP_DEFLATE); parameters.setCompressionLevel(Zip4jConstants.DEFLATE_LEVEL_NORMAL); zipFile = new ZipFile("example2.zip"); zipFile.addFolder(destFolder, parameters); } } ``` 请注意,以上代码只是示例,并不会处理错误处理和异常情况。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值