java哪种类型是BLOB?
我的数据库中有大约100000个blob,必须处理它们。当有人告诉我必须处理哪种类型的斑点时,一切都没问题。但在某些情况下,我不知道它是哪种类型。那么我怎样才能知道我的BLOB是哪种类型的呢
上次我处理BLOB时,我得到了关于它的具体信息,它是压缩文件。所以我做了这个
try {
byte[] str = this.jdbcTemplate.queryForObject("SELECT SAVEDATA FROM JDBEVPP1.TEVP005 WHERE GFNR = 357302", byte[].class); // pakira BLOB u byte array
ByteArrayInputStream bys = new ByteArrayInputStream(str);
GZIPInputStream gzip = new GZIPInputStream(bys);
//...etc...
}
我怎样才能知道BLOB使用的是哪种类型的Java代码
# 1 楼答案
这个问题的最终答案是罗伯特·哈维的评论:
“识别某种类型的二进制文件的常用方法是在文件的开头有一些“幻数”,可以用来识别该类型。请参见en.wikipedia.org/wiki/…和en.wikipedia.org/wiki/file_format#magic_number”
以及埃尔文·斯穆特的评论:
“通过阅读数据库设计的详细规范。如果没有,请尝试找到系统的原始作者并希望他仍然记得。如果没有,请尝试找到使用相同BLOB的其他代码,并从那里重新设计规范。在大多数商店中,您将不得不一路走到第三步。”