使用Java解析具有奇怪扩展类型的文件[关闭]
Posted
技术标签:
【中文标题】使用Java解析具有奇怪扩展类型的文件[关闭]【英文标题】:parsing a file with a strange extension type using Java [closed] 【发布时间】:2012-11-14 06:47:36 【问题描述】:我试图在我的 Java 程序中解析具有不同扩展类型的文件。 我刚得到一个奇怪的文件,它有一个独特的文件格式,如下所示。
20121126.033111.vikeng8.28088
我不确定这个特定文件的扩展名是什么。 Windows 将类型显示为 28088 文件。 我认为它是某种文本文件。我无法从谷歌找到任何进一步的信息。我可以用记事本++和记事本打开。
如何从 Java 中确定此文件扩展名类型?这类文件的扩展名一般是什么?
此外,我需要打开这个文件并从中读取一些信息。 任何帮助都会非常有用,因为我是第一次看到这种奇怪的文件。
【问题讨论】:
如有疑问,请尝试将其作为文本打开,看看数据是否正常。 注意,扩展不一定与文件类型有任何关系。不要依赖它们,除非可以作为先尝试哪种格式的提示。 重复:***.com/questions/9738597/… 未经作者同意,请勿关闭问题。有些问题对某些人来说可能听起来很琐碎,但对其他人来说却是莫名其妙。 【参考方案1】:扩展名并不一定意味着什么——例如,在 .jpg 文件上添加 .txt 扩展名并不意味着它不再是 .jpg——文件类型通常由内容决定;扩展名应该是内容的线索。
关于您的问题 - 此文件的扩展名确实是 .28088 - 尽管这并没有说明所有内容。 Java 无法告诉你任何不同的东西。
【讨论】:
谢谢克里斯。在我的 Java 代码中,我正在确定文件的扩展类型并进行一些处理。示例:.zip(某个进程)、.gz(某个进程)、.txt(某个进程)等。我如何使用 Java 处理上述类型的特定扩展类型。我无法正确检查数字,这实际上是不可能的,因为数字每次都会变化。我希望你正确地解决了我的问题。【参考方案2】:文件扩展名不可靠。
那只是Windows版本的服务器,但显然文件名是可以更改的。因此,不幸的是,用户应该为文件起一个合理的名称。
Unix 有用于检测文件类型的库。例如,命令file example.cc
将输出类似C++ source, ASCII text, with very long lines
的内容。
我假设它是一封电子邮件或类似的东西,然后您可以将其视为mbox
文件。
尽管如此,如果您不确定文件扩展名,请假设它不正确并执行正确的文件类型检测。
参见例如:How to reliably detect file types?
【讨论】:
以上是关于使用Java解析具有奇怪扩展类型的文件[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何在java中解析具有<map-Map><map-Entry><map-Key><map-Value>的xml文件[关闭]