文件java中常见错误和异常解决方法

dns错误怎么解决  时间:2021-02-27  阅读:()

1.java.lang.NullPointerException

原因是有空指针有地址没赋值

2.Exception in thread "main" java.lang.ArithmeticException: / by zero

原因是除数是0

3.ArrayIndexOutOfBoundsException

原因是数组越界

4.java.lang.NumberFormatException

原因是数字格式化有问题

5、 Unhandled exception type Exception

原因是没有进行异常处理

6.进行国际化操作的时候遇到这样的错误 Exception in thread "main"java.util.MissingResourceException: Can't find bundle for base nameMessage,locale zh_CN

答 因为在命令提示符中是没有错误的

解决方法是在myeclipse中会出现这个错误java国际化之Canfind bundle forbase name

分类 JAVA2011-02-2221 :17231人阅读评论(0)收藏举报

1 .初步学习

最近在学习ResourseBundle时遇到了“Can't find bundleforbase name”这个错误搞了很久才解决了。原因就是类路径问题要将属性文件放在类路径中百度里很多都是教程但没有涉及到解决方法 2.中文显示

测试文件java代码package com. lht.ResourseBundleStudy;import java.uti l .ResourceBundle;publ ic class ResourseBundleDemo{publ ic staticvoid main(String[]args) {

ResourceBundle resource=ResourceBundle.getBundle("test");

System.out.print(resource.getString("msg0")+"!");

System.out.println(resource.getString("msg1")+"!"); }

}test.propertiesmsg0="Hel lo World"msg1="dajia hao"

开始自己测试的时候将属性文件放在bin/下也试过也不行无赖中就在google中搜索了一下终于在sun的java论坛

(http://forum.java.sun.com/thread.jspa?threadID=&messageID=)中找到了线索下面是帖子的内容

I've solved the problem the best way possible.Basical ly what i 've done is added a newclass folder named config to the projecthome dir.Then i added this classfolder totheclasspath in project properties.After doing al l of this you onlyneed to reference theproperties fi le by"Emai l".

Hope this helps anyone elsewho is havingsimi l iar problems.

基本意思就是在src下建立classes(名字无所谓)文件夹将属性文件存放在下面然后将这个文件夹加入类路径中运行就可以了

加入类路径的方法:你的工程文件夹->properties->选择Libraries选项卡->Add Class Folder将刚才建立的文件夹加入就可以了

结果如下

"Hel lo World"!"dajia hao"; !

2.中文显示

在classes目录下建立message_CH.properties内容如下:ms0="大家好"

同样用上面的测试文件

结果如下 "?ó????"!

乱码怎么回事啊

在百度里搜索后找到了答案有以为网友写的很清楚 http://gostar.bokee.com/.html下面引用如下:

原理

Property文件中使用的编码方式根据机器本身的设置可能是GBK或者UTF-8。而在Java程序中读取Property文件的时候使用的是Unicode编码方式这种编码方式不同会导致中文乱码。因此需要将Property文件中的中文字符转化成Unicode编码方式才能正常显示中文。

解决办法

Java提供了专门的工具对Property文件进行Unicode转化这种工具就是native2asci i 它在JDK安装环境的bin 目录下。native2asci i工具将带有本机编码字符非拉丁1和非单一码字符的文件转换成带有Unicode编码字符的文件。

假设需要转化的属性文件为 D:/src/resources.properties 含有中文字符

转化后的属性文件为 D:/classes/resources.properties 中文字符统一转化为Unicode那么使用如下命令

JAVA_HOME/bin/native2asci i -encoding GBK D:/src/resources.properties

D:/classes/resources.properties

就能将含有中文字符的属性文件转化成单一Unicode编码方式的属性文件。 中文乱码自然会被解决。

通过上面的方法我将生成的文件打开一看内容如下:ch="/u5927/u5bb6/u597d"

再运行结果如下

"大家好"

2另一种解决办法Can' t find bundle for base name2010-09-1015:23:14

标签 namefind Can base bundle

原创作品允许转载转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。否则将追究法律责任。 http://stones blog 51cto com//

Struts2国际化异常处理

这是找不到指定文件

你必须把properties文件放在与这个调用文件java相同的目录里

Hello java在workspace\test\src\com\lj\guojiehua下hello_en_US properties必须在workspace\test\src下hello_zh_CN properties必须在workspace\test\src下

其实原因是我虽然在bui ld path里面加了\pruway\source\source\config但是系统编译的时候在classes里面应该会自动产生resource_en_US properties可是实际情况是classes包下面没有产生故我删掉重加再编译结果发现通过了。 。

就是说 只要你bui ldpath路径对了该路径下也有resoucebudle需要的类那么系统会自动在classes里面自动编译产生这些类的。所以先检查classes里有没有生成对应的resource_en_US properties,如果没有那么检查bui ld path路径下有没有对应的properties类如果有那么证明系统编译没有编译完整删掉path重新add foler加入再编译检查classes下有无。

如果都有那么证明成功。

10.java.lang.IllegalThreadStateException

解决办法不能启动两次线程

11.java.lang.NoSuchMethodError

答必须有一个public static void main(String[] args){ //这里是入口 } 作为入口点启动java虚拟机时虚拟机会找这个方法 如果没有就报exception in thread“main”j ava.lang.nosuchmethoderror

12.

java.net.UnknownHostException http://www.b aidu.com/

原始出错程序是这样的

解答方式 import java.net.InetAddress ;public class a{public static void main(String args[ ] ) throws Exception {//所有异常抛出

InetAddress locAdd = null ;

InetAddress remAdd = null ;locAdd = InetAddress.getLocalHost( ) ;//得到本机remAdd = InetAddress.getByName("http://www.baidu.com/" ) ;

System.out.println("本机的IP地址 " + locAdd.getHostAddress() ) ;

System.out.println("MLDNJAVA 的 IP 地 址  " +remAdd.getHostAddress() ) ;

System.out.println("本机是否可达 " + locAdd.isReachable(5000)) ;

}

//5000代表代数

};

运行后结果为

如果注释掉remAdd = InetAddress.getByName("http://www.baidu.com/" ) ;

运行结果又是这样的

上述程序的解决办法是将remAdd = InetAddress.getByName("http://www.baidu.com/") ;改成

程序运行结果如下

完成实验要求但是这里就有一个问题了为什么去掉http//和后面的/的就运行的了呢

2但是对于这个极其相似的程序却可以运行出结果import java.net.InetAddress ;public class b {public static void main(String args[ ] )throws Exception{

InetAddress address=InetAddress.getByName("www.microsoft.com") ;

System.out.println("ip: "+address.getHostAddress() );

System.out.println("host: "+address.getHostName() ) ;

System.out.println("canonical host name:"+address.getCanonicalHostName() ) ;byte[] bytes=address.getAddress() ;for(byte b:bytes)

{if(b>=0)System.out.print(b) ;else System.out.print(256+b);

}

}

}

运行结果为

13.运行下列程序出现了这样的错误这是线程的知识 一个线程如果启动了再启动一个的时候就会报错java. lang. Il legalThreadStateException

程序如下 class thrund extends Thread{private String name;public thrund(String name) {thi s.n ame=n ame;

}public void run( ) { //线程完成的动作for(int j=0;j<4; j++) {

System.out.println(name+"第"+j+"个") ;

}

}

} ;public class a {public static void main(String agrs[ ] ) {thrund th1=new thrund("线程A") ; //实例化一个线程对象th1.start( ) ; //调用线程主体th1.start( ) ; //调用线程主体

}

} ;

运行结果如下

14.The public type abc must be defined in itsown fi le这样的警告是出现在我下面这样的程序中的

所以我在百度上输入这样的问题 java程序中两个类为什么不能同时有public 其中有一个是主方法 

得到的回答是这样的

因为一个GM规定一个类中只能有一个PUBLIC的 而且源文件的名字只能和PUBLKIC属性的类去一个名字。

另一种回答是这样的 同个源文件有多个公共类编译器就找不到应该执行的main方法了

15.运行下列泛型程序时出现一下错误

程序 class add<T>{private T y;public T p(T y) {

System.out.println(y) ;return y;

}

}public class a{public static void main (String args[ ] ) {add <String> adder=new add<String>( ) ;

//System.out.println("输出属性"+adder.getX( ) ) ;

//adde r.p("你好邱林和") ;fun(adder) ;public static void fun(add<?> temp) {

System.out.println("内容"+temp) ;

}

}

}

出现了如下错误

其中这个void is an invalid type for the variable fun这个错误的解释时

第一步检查拼写是否错误; 第二步检查void actionPerformed(ActionEvent ae){}函数的位置不能让它嵌套在别的函数里。我不知道为什么但我这样改对了。

通过这个观察上述代码确实发现这个fun方法被包含在了主方法中所以导致这个错

美国高防云服务器 1核 1G 10M 38元/月 百纵科技

百纵科技:美国云服务器活动重磅来袭,洛杉矶C3机房 带金盾高防,会员后台可自助管理防火墙,添加黑白名单 CC策略开启低中高.CPU全系列E52680v3 DDR4内存 三星固态盘列阵。另有高防清洗!百纵科技官网:https://www.baizon.cn/联系QQ:3005827206美国洛杉矶 CN2 云服务器CPU内存带宽数据盘防御价格活动活动地址1核1G10M10G10G38/月续费同价点击...

阿里云香港 16核32G 20M 999元/月

阿里云香港配置图提速啦是成立于2012年的十分老牌的一个商家这次给大家评测的是 阿里云香港 16核32G 20M 这款产品,单单说价格上就是十分的离谱原价8631元/月的现价只要 999元 而且还有个8折循环优惠。废话不多说直接进入正题。优惠时间 2021年8月20日-2021年9月20日 优惠码 wn789 8折优惠阿里云香港BGP专线 16核32G 10M带宽 优惠购买 399元购买链接阿里云...

819云互联 香港 日本 美国 2核4G 18元 8核8G 39元 免费空间 免费CDN 香港 E3 16G 20M 230元/月

819云互联是海外领先的互联网业务平台服务提供商。专注为用户提供低价高性能云计算产品,致力于云计算应用的易用性开发,并引导云计算在国内普及。目前平台研发以及运营云服务基础设施服务平台(IaaS),面向全球客户提供基于云计算的IT解决方案与客户服务,拥有丰富的海外资源、香港,日本,美国等各国优质的IDC资源。官方网站:https://www.819yun.com香港特价物理服务器:地区CPU内存带宽...

dns错误怎么解决为你推荐
明星论坛www.51.com是一个关于什么的网站?安卓应用平台app应用平台有哪些 应用平台哪些迅雷云点播账号求百度云或者迅雷云播账号密码数据库损坏数据库坏了,怎么修复?iphone6上市时间苹果6什么时候出?多少钱gbk编码表GBK码表怎么查手工杀毒求个强大的手动杀毒软件手工杀毒有没有人会手动杀毒.可否详解下ncsettingNcsettings的“秘密浏览”、“自动改正”这两个开关是干啥用的啊?网易企业邮箱登陆怎么登陆网易企业邮箱?企业邮箱和163邮箱区别于那些地方?
网站虚拟主机空间 域名主机基地 韩国加速器 国外bt 68.168.16.150 免费博客空间 ibrs 合租空间 qq对话框 稳定免费空间 重庆双线服务器托管 免费dns解析 流媒体加速 七夕快乐英语 中国电信网络测速 工信部icp备案查询 中国联通宽带测试 乐视会员免费领取 websitepanel 建站论坛 更多