查看oracle数据库dmp文件的字符集信息

前端之家收集整理的这篇文章主要介绍了查看oracle数据库dmp文件的字符集信息前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

oracle的dmp文件的第2,第3字节记录了字符集信息

windows环境下我们可以通过winhex来查看,winhex支持4G以上大文件的秒速打开

如果你有java环境,也可以用java来读取dmp文件的字节信息

  1. import java.io.FileInputStream;
  2.  
  3. public class ReadDmpCharsetBytes {
  4.  
  5. public static void main(String[] args) throws Exception {
  6. byte[] bytes = new byte[3];
  7. new FileInputStream("F:/xxx.dmp").read(bytes);
  8. String bytestr = String.format("%02x",bytes[1]) + String.format("%02x",bytes[2]);
  9. System.out.println(bytestr);
  10. System.out.println("select nls_charset_name(to_number('" + bytestr + "','xxxx')) from dual");
  11. }
  12.  
  13. }


获取字节信息后,我们可以用sql查询对应的字符集名称

例如 0345对应的是ZHS16GBK,0369对应的是AL32UTF8

select nls_charset_name(to_number('0354','xxxx')) from dual

如果想偷懒,就直接访问这个https://hexed.it/

看下图操作,读4G的文件字节码也这么快,对应dmp的第二字节是03第三字节是69

猜你在找的Oracle相关文章