文件格式转换

org.apache.hadoop.hive.ql.util.DosToUnix


//将window格式文件转换为unix格式

public static String convertWindowsScriptToUnix(File windowsScriptFile) throws Exception {
    String windowsScriptFilename = windowsScriptFile.getName();
    String unixScriptFilename = getUnixScriptNameFor(windowsScriptFilename);
    File unixScriptFile = null;
    if (windowsScriptFile.getParent() != null) {
      unixScriptFile = new File(windowsScriptFile.getParent() + "/" + unixScriptFilename);
    } else {
      unixScriptFile = new File(unixScriptFilename);
    }
    BufferedWriter writer = new BufferedWriter(new FileWriter(unixScriptFile));
    try {
      BufferedReader reader = new BufferedReader(new FileReader(windowsScriptFile));
      try {
        int prev = reader.read();
        int next = reader.read();
        while( prev != -1 ) {
          if ( prev != -1 && ( prev != '\r' || next != '\n' ) ) {
            writer.write(prev);
          }
          prev = next;
          next = reader.read();
        }
      }
      finally {
        reader.close();
      }
    }
    finally {
      writer.close();
    }
    unixScriptFile.setExecutable(true);
    return unixScriptFile.getAbsolutePath();
  }


//判断文件格式

 public static boolean isWindowsScript(File file) {
    BufferedReader reader = null;
    try {
      reader = new BufferedReader(new InputStreamReader(new FileInputStream(file)));
      char[] buffer = new char[4096];
      int readLength = reader.read(buffer);
      if (readLength >= 2 && buffer[0] == '#' && buffer[1] == '!') {
        for(int i=2; i<readLength; ++i) {
          switch(buffer[i]) {
          case '\r':
            return true;
          case '\n':
            return false;
          }
        }
      }
    } catch (Exception e) {
      // It means, It is not a valid windows script file so ignore the exception and return false.
    } finally {
      if (reader != null) {
        try {
          reader.close();
        }catch (Exception e) {
        }
      }
    }
    return false;
  }


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
图像文件格式转换是指将一种图像文件格式转换为另一种图像文件的操作。这种操作通常用于不同图像编辑软件或设备之间文件的兼容性转换。 在C语言中,可以通过使用相应的图像处理库来实现图像文件格式转换。其中,最常用的图像处理库包括OpenCV和ImageMagick。 在使用这些图像处理库进行图像文件格式转换时,通常需要按照以下步骤进行: 1. 导入库文件:在C语言中,首先需要在代码中导入相关的图像处理库文件,以便使用库中提供的函数和方法。 2. 加载图像:使用图像处理库提供的函数或方法,将需要进行格式转换的图像文件加载到内存中。通常,图像文件可以通过指定路径的方式进行加载,或者直接从内存中进行加载。 3. 格式转换:通过调用图像处理库中提供的函数或方法,将加载到内存中的图像文件进行格式转换。函数或方法会根据指定的转换规则,将图像文件转换为目标格式。转换过程中,可能还需要进行一些参数的设置,如图像的压缩比、色彩空间的转换等。 4. 保存图像:将转换后的图像文件保存到磁盘中。保存过程通常也需要指定保存路径和目标文件名。 5. 释放资源:在图像文件格式转换完成后,需要释放之前加载到内存中的图像资源,以便释放内存空间。 综上所述,通过使用C语言中的图像处理库,我们可以实现图像文件格式转换的功能。这种转换能够实现不同图像文件格式之间的互相转换,为后续的图像处理工作提供了更多的选择和便利。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值