随笔小问题(一)--mac打开class文件

本来不想写这个东西的。但是这个却费了我一番周折。

我要先声明一点的是,我从来不讲iOS当成一个单独的系统,而是将这个操作系统归位unix内核的系统。

简单来说,我把它当成linux在用。

但是,mac系统的默认字符并不是utf-8;所以我们是无法使用记事本简单的打开.class文件。

会出现如下提示:

其实我的第一想法是打开/etc/profile将编码调成utif-8;但是这个时候,我发现,苹果很多系统配置文件和linux是不一样的。不光很多文件的所在文件夹不一样,同名文件的功能也有很大的区别(好吧,我感觉我又要开一个系列来讲一下unix相关系统)。这个文件虽然在这个地方,而且当我打开过后,这个文档的代码如下;

# System-wide .profile for sh(1)

if [ -x /usr/libexec/path_helper ]; then
        eval `/usr/libexec/path_helper -s`
fi

if [ "${BASH-no}" != "no" ]; then
        [ -r /etc/bashrc ] && . /etc/bashrc
fi

我也去引用的文件看了,但是限于本人bash能力不够。没能搞懂T T。

然后我就想到了用vim打开,当然打开仍然是乱码。注意,我的目标并不是得到一个由字符组成的文件,而是。class的十六进制所表示的文件!!

所以我先用 vim -b XXX.class

先用二进制表示将class文件打开。

然后在vim内调用

:%!xxd

然后就会出现以下内容:

看到第一个4字节的magic number是cafebabe。这就是.class文件的开头了。至于为什么是cafebabe

看看java的图标吧!

原文地址:https://www.cnblogs.com/DSNFZ/p/7595792.html