本文目录一览:
- 1、intellij idea java文件只读不可编辑怎么解决?
- 2、为什么Windows7无法打开.Java文件?
- 3、java写二进制文件,不能直接编辑,该怎么操作?
- 4、idea java文件只读状态 不可编辑怎么修改回可编辑状态…啊…各位亲……
- 5、Android开发中为什么从svn下载的java文件不能编辑
- 6、eclipse中代码无法编辑
intellij idea java文件只读不可编辑怎么解决?
你这边应该是文件不小心点击到了锁定文件。打开锁定文件的窗口,选择File如图选项:
为什么Windows7无法打开.Java文件?
Windows7无法打开.Java文件是因为没有装文本编辑器,最常用的是windows默认的记事本程序打开。
1、打开.java文件所在的目录:
2、右键选择打开方式,然后选择“记事本”即可:
3、打开后的效果:
java写二进制文件,不能直接编辑,该怎么操作?
一直以来都在用java编程,以前在Java写一些二进制格式的文件,就用DataOutputStream很方法,例如它的writeInt,writeLong等,我今天在看一些代码的时候发现DataOutputStream在处理多字节的数字的时候,使用的是BIG_ENDIAN(即将高位的字节放在内存地址的低地址上),相应的DataInputStream的读取方式也使用的是BIG_ENDIAN。
这样就引出一个问题,如果我是用Java之外的语言,比如C语言读取由DataOutputStream生成的文件,而平台正好是LITTLE_ENDIAN(用得很广泛的x86的系统都是LITTLE_ENDIAN),很可能会造成数据错误,除非在C程序中自己重新按照BIG_ENDIAN的格式组装int或者long.
这样我们需要在写文件的时候就按照平台的字节顺来写,而ByteBuffer已经考虑到了这一点。
java.nio.ByteBuffer默认是BIG_ENDIAN(这可能和ByteBuffer主要用来做网络通讯有关),但是这个值是可以修改的。
比较使用DataOutputStream和ByteBuffer写文件的差异:
public static void main(String[] args) throws IOException {
int _int = 12345678;
ByteBuffer _nbuffer = ByteBuffer.allocate(4);
_nbuffer.order(ByteOrder.nativeOrder()); //将新建的ByteBuffer设置为本机的字节顺
_nbuffer.putInt(_int);
_nbuffer.flip();
FileOutputStream _fou = new FileOutputStream("test_dout.data");
FileOutputStream _nfou = new FileOutputStream("test_nbuf.data");
DataOutputStream _dou = new DataOutputStream(_fou);
_dou.writeInt(_int);
_dou.close();
_nfou.write(_nbuffer.array());
_nfou.close();
System.out.println(ByteOrder.nativeOrder());
}
执行上面的代码生成两个文件:
test_dout.data - 使用DataOutputStream生成的BIG_ENDIAN文件,
test_nbuf.data - 使用ByteBuffer生成的主机字节顺的文件(此处的主机字节顺为LITTLE_ENDIAN)
使用下面的C程序分别读取这两个文件:
#include stdio.h
int read_file(char* file);
main()
{
char* dout = "test_dout.data";
char* nbuf = "test_nbuf.data";
printf("data in %s:%d\n",dout,read_file(dout));
printf("data in %s:%d\n",nbuf,read_file(nbuf));
}
int read_file(char* file)
{
FILE *fp;
int dat[1];
fp=fopen(file, "rb");/*打开一个二进制文件只读*/
fread(dat, sizeof(int), 1, fp);
fclose(fp);
return dat[0];
}
编译并执行:
gcc a.c
./a.out
data in test_dout.data:1315027968
data in test_nbuf.data:12345678
上面的C程序从test_dout.data取得的int数值是错误的,而从test_nbuf.data是正确的。
ByteBuffer不方便的地方在于它的大小不能自动扩展,但是也是可以解决的,比如MINA自己的ByteBuffer就支持自成扩展。
Java的生成二进制数据文件,应该要考虑一下字节顺的问题,以适应一些特殊的需求,比如多语言平台编程的情况。
idea java文件只读状态 不可编辑怎么修改回可编辑状态…啊…各位亲……
Cannot
modify
a
read-only
file
'xxx.class'
我是路径下的点错了,打开了out目录下的文件,
重新从src找到该文件,双击打开就行了.
SB错误
Android开发中为什么从svn下载的java文件不能编辑
从文件夹选项中,取消“隐藏艘保护的操作系统文件”,选取“显示隐藏的文件、文件夹和驱动器”。然后将你下载的代码目录下所有名称为“.svn“的文件夹整个删除,然后你就可以随意修改文件了。
eclipse中代码无法编辑
eclipse中代码无法编辑是设置错误造成的,解决方法为;
1、打开Eclipse。
2、打开Windows→Preferences。
3、点击Java→Editor→Content Assist。
4、修改Auto Activation triggers for java的值为:.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVW,点击apply按钮。
5、如需修改代码提示的显示时间,则修改Auto Activation delay的值为你所需的时间,单位是ms。如:输入100,则代表等待代码提示的时间为100ms。