首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在强行更改扩展名后,文件上显示了哪些字符?

在强行更改扩展名后,文件上显示了哪些字符?
EN

Stack Overflow用户
提问于 2021-07-15 12:56:26
回答 1查看 28关注 0票数 2

最近,我将.apk文件的扩展名更改为.txt,尽管如此,我还是能够在记事本上打开它,并带有一些随机字符,这些字符在文件中的键盘上是不可用的。

org/antlr/runtime/ANTLRFileStream.class…TmOÓP=w[×QËÀ)ê|A…ÑETÔ¢NP¢™ãË—º•Q3ZÓcüþ¿j",£ß4ñGÏmÇñ˽Ïs{žçœçeûùëóW ±¨á0F5d0ÖA˔‹LÈã’ŠËR˜PqEƒ†Iy\•ØkÒºÞÁЂ´¦TL«˜H­95{ÙÚ°2K/­×–Y³Üªù(ð·:%œv\'¸!Гû÷óðª@¢èUܵä¸öòæÆÛ_±^ÔÂt^Ùª­Z¾#ýæc"XwêKž_5-7¨ù¦¿éΆmÞZ^Y*ÍS “ÛÖ¹µ¹7eûUàxn]%µ‘Ð^TÊvË^…kžUˆ;u_àTw<sÁ}µDL%ÛªØ>ùÄš@º…Rø˜¨;o)\,0ǚԞ݇ؓ‡àΪ<ò6ýr³¥GsÃ횪EOÌ_…É =è•ǬŽ#8ª£½ú^fùõ˜Ž›¸%pü IT{`Á2þ¶<Š:î`NÇ<î긇A˜èÿïˆ8Ç0Q¥»¨#- Ze7srRÉšíVƒõÐ]0rí&tÀ”O´‡[Y±K ö¬H›¯Ü %÷¬8Ì) r+åšW·ÑÏF†¿,bd—i%h³­ˆá8½YÄiª‘

不仅如此,在转换许多其他扩展(如.jar.xapk等)时,还会向我展示这些字符。

请任何人解释,这些字符是基于什么因素,以及操作系统如何决定或尝试在不受支持的文件中显示哪些字符。

有办法通过这些数据获取原始内容吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-07-15 16:39:54

假设您创建了一个文本编辑器,它可以编写和保存文本文件以及打开的文本文件。您还定义了用于将文本保存在二进制文件中的编码(保存时的所有文件都是二进制文件)。因此,您的编码如下所示:

代码语言:javascript
运行
复制
Your encoding                               Emacs encoding    

TEXT       BINARY                          TEXT       BINARY
A          01000001                         ă         01000001    
B          01000010                         Ћ         01000010         
...                                         ...
Z          01011010                         Ϡ         01011010   

假设您创建了一个以“ABZ”为内容的文件。此文件保存时包含值0100000100001001011010。当您用文本编辑器打开这个文件时,编辑器发现010000010100001001011010作为文件内容,并且使用上面的编码它知道它的'ABZ‘,因此它在屏幕上打印'ABZ’。

现在假设您使用emacs打开同一个文件,因为emacs使用自己的编码显示"ăЋϠ",所以emacs没有什么问题。它只是不知道数据是用您的自定义编码编写的。

所以关键是每个文件都是用一种特定的格式编写的,例如APK格式只能被Android系统正确理解。当您尝试在文本编辑器中打开APK文件时,它只是尝试以与上面示例中emacs相同的方式理解二进制数据。

有办法通过这些数据获取原始内容吗?

如果您知道写入数据的最初编码方式,那么您可以使用相同的编码方式读取文件的内容。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68394273

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档