java处理txt文件

java处理txt文件,第1张

分别读取两个文件

String[] s1 = new String[] { "1,admin", "2,manager", "3,qyi" };//假设这是第一个文件

String[] s2 = new String[] { "SN222,admin", "SN33,manager","SN0982,qyi" };//第二个文件的内容

List<String> l = new ArrayList<String>();//比较组合后的结果集

for (int i = 0; i < s1length; i++) {//取第一文件的每一个对象与第二文件的每一个对象

String[] ss1 = s1[i]split(",");

for (int j = 0; j < s2length; j++) {

String[] ss2 = s2[j]split(",");

if(ss2[1]equals(ss1[1])){//根据用户名进行比较,如果相同的话就进行字符串拼接,然后放到结果集当中,

ladd(ss1[0]+","+ss2[0]+","+ss1[1]);

continue;//跳出内循环

}

}

}

for(String s : l){//打印结果集(可以在这里将结果集写入到新的文件当中去)

Systemoutprintln(s);

}

java中编码:URLEncoderencode(strUri,"utf-8");

java中解码码:URLDecoderdecode(strUri,"utf-8");

java编码和解码        

流读取文件,具有转换编码功能的有:OutputStreamWriter和InputStreamReader,

构造器有如:

InputStreamReader(InputStream in, String charsetName)

创建使用指定字符集的 InputStreamReader。

OutputStreamWriter(OutputStream out, String charsetName)

创建使用指定字符集的 OutputStreamWriter。

处理字符串编码问题:

重新对获取的字符串进行编码:Byte[] bytes = strgetBytes(String encodeCharsetNam);

重新对bytes进行解码,创建新的字符串对象:str = new String(Byte[] bytes,String decodeCharsetName);

一般结合使用:str = new String(strgetBytes(String encodeCharsetName),String decodeCharsetName);

例如:resultName=new String(usernamegetBytes("ISO-8859-1"),"UTF-8");

还可以加入判断:

if(!CharsetforName("gbk")newEncoder()canEncode(str)){str = new Strin(strgetBytes("ISO-8859-1"),"UTF-8");}else{str = new String(strgetBytes("ISO-8859-1"),"gbk");}

处理请求参数传递编码问题:

java中编码:URLEncoderencode(strUri,"utf-8");

java中解码码:URLDecoderdecode(strUri,"utf-8");

js中编码:encodeURIComponent(strUri);encodeURI(strUri);escape(str);

js中解码:decodeURIComponent(strUri);decodeURI(strUri);unescape(str);

补充概念

URI组件:主机、端口、路径、查询参数、片段等。

URI组件分隔符::/#&[]@,冒号用于分隔协议和主机,/用于分隔主机和 路径,用于分隔路径和查询参数,&用于分隔多个查询参数等。

URI中的不安全字符或保留字符: ! ‘ ( ) ; : @ & = + $ , / # [ ] 他们具有特殊作用,例如上面的分隔作用。

URI允许出现的字符:只允许包含英文字母(a-zA-Z)、数字(0-9)、-_~4个特殊字符以及所有保留字符,其他字符均需要经过编码之后才能出现在Url中,比如使用保留字符的原意,而不是特殊作用。

js向java/jsp的编码与解码:

js中编码:encodeURI(encodeURI(strUri));decodeURIComponent(decodeURIComponent(strUri));

java/jsp中解码: javanetURLDecoderdecode(strUri,"UTF-8");

js中编码两次的问题:如果使用一次编码,在浏览器地址栏里,浏览器认为%是个转义字符,浏览器会把%与%之间的编码值,两位两位取出后进行解码。

然后再传递给处理页面,然后由处理页面进行再次解码,这样前面就缺少了一次编码过程,所以前面需要连续两次编码。

File in = new File(args[0]);

InputStreamReader r = new InputStreamReader(new FileInputStream(in));

Systemoutprintln(rgetEncoding());

以上就是关于java处理txt文件全部的内容,包括:java处理txt文件、java中编码与解码分别指什么、java 获取 file 的编码(utf-8或者gbk)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/10152975.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存