- 浏览: 1588917 次
- 来自: 上海
文章分类
- 全部博客 (374)
- Java (101)
- Struts (54)
- Oracle (30)
- JavaScript (16)
- Spring (27)
- Hibernate (16)
- MyEclipse (3)
- JSF (1)
- FreeMarker (2)
- SiteMesh (2)
- JfreeChart (2)
- Ibatis (2)
- JSP (12)
- MyBatis (4)
- SWFupload (1)
- EJB (4)
- Jboss (4)
- WebService (2)
- Linux (16)
- Android (2)
- XML (6)
- Java 网络编程 (13)
- AXIS2 (1)
- FTP (1)
- Jswing (1)
- Socket (3)
- 杂文选集 (6)
- solr (2)
- PS (1)
- Tomcat (7)
- JDBC (9)
- Highcharts (1)
- maven (1)
- Nodejs (0)
- navicat (2)
- Exception (5)
- eclipse (3)
- jQuery (1)
- springMVC (4)
- MySQL (11)
- SVN (1)
- Sql Server (1)
- zookeeper (1)
- JVM (1)
- Groovy (2)
- Git (1)
- Nginx (1)
- DynamicReport (1)
- IDEA (2)
- JasperReports (1)
- Postgresql (2)
- Mac (1)
- gradle (1)
- 数据结构算法 (1)
最新评论
-
hpu145:
引用引用
java 千分位的添加和去除 -
被遗忘的下路:
少了个junit-4.8.2的包
SSH2整合完整案例(四十三) -
白天看黑夜:
java过滤emoji字符处理,希望能帮到你http://ww ...
emoji 表情图片解决方法 -
caipeiming:
这个挺好JavaScript实现input输入框控件只允许输入 ...
js 控制文本框只能输入中文、英文、数字等 -
双子树:
东西太好啦受教啊
Struts2 JSP中将list,set ,Map传递到Action然后<s:iterator>遍历(三十五)
需要明白 UTF-8 编码 格式规则
IO练习
/** * 记事本中的 联通的 编码问题 * */ public class LiantongDemo { public static void main(String[] args) throws IOException { String s="联通"; byte[] by=s.getBytes("gbk"); System.out.println(Arrays.toString(by)); //[-63, -86, -51, -88] for (byte b : by) { System.out.println(Integer.toBinaryString(b&255)); //&255 是为了获取有效位 } /*打印出来的 是 符合 UTF-8 编码格式.所以 记事本就开始使用 UTF-8 来编码了 11000001 10101010 11001101 10101000*/ System.out.println(new String(by,"UTF-8")); } }
IO练习
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileWriter; import java.io.IOException; import java.io.InputStreamReader; import java.util.Collections; import java.util.Comparator; import java.util.Set; import java.util.TreeSet; /** * 有5个学生,每个学生有3门课程的成绩 * 从键盘输入以上数据 包括 (姓名,3门 课程的成绩). * 输入的格式,如: 张三,30,40,60 计算出总成绩. * 并把学生的信息和计算出来的总分的高低顺序存放在磁盘文件stu.txt中 * * 思路: * 1.描述学生对象 * 2.定义一个可以操作学生的工具类 * * 思想: * 1.通过键盘录入一行数据,并将改行中的信息取出封装成学生对象. * 2.因为学生有很多,那么需要存储,使用到集合,因为要对学生的总分排序 * 所以可以使用TreeSet. * 3.将集合中的信息写入到一个文件中. */ class Student implements Comparable<Student>{ private String name; private int ma,cn,en; private int sum; Student(String name,int ma,int cn,int en){ this.name=name; this.ma=ma; this.cn=cn; this.en=en; sum=ma+cn+en; } public String getName(){ return name; } public int getSum(){ return sum; } public int hashCode(){ return name.hashCode()+sum*2; } public boolean equals(Object obj){ if(!(obj instanceof Student)){ throw new RuntimeException("类型不匹配"); } Student s=(Student)obj; return name.equals(s.name) && this.sum==s.sum; } public int compareTo(Student s){ int num=new Integer(sum).compareTo(new Integer(s.sum)); if(num==0) return this.name.compareTo(s.name); return num; } public String toString(){ return "Student["+name+", "+ma+", "+cn+", "+en+"]"; } } class StudentInfoTool{ public static Set<Student> getStudents() throws Exception{ return getStudents(null); } public static Set<Student> getStudents(Comparator<Student> cmp) throws Exception{ BufferedReader bufr=new BufferedReader(new InputStreamReader(System.in)); String line=null; Set<Student> stus=null; if(cmp==null) stus=new TreeSet<Student>(); else{ stus=new TreeSet<Student>(cmp); } while((line=bufr.readLine())!=null){ if("over".equals(line)) break; String[] info=line.split(","); Student stu=new Student(info[0], new Integer(info[1]), new Integer(info[2]), new Integer(info[3]) ); stus.add(stu); } bufr.close(); return stus; } public static void write2File(Set<Student> stus) throws IOException{ BufferedWriter bufw=new BufferedWriter(new FileWriter("stuinfo.txt")); for (Student stu : stus) { bufw.write(stu.toString()+"\t"); bufw.write(stu.getSum()+""); bufw.newLine(); bufw.flush(); } bufw.close(); } } public class StudyDemo { public static void main(String[] args) throws Exception { Comparator<Student> cmp=Collections.reverseOrder(); //使用比较器反转 Set<Student>stus=StudentInfoTool.getStudents(cmp); StudentInfoTool.write2File(stus); } }
发表评论
-
检测一个字符串是否在jvm的常量池中
2018-12-18 17:34 995public static boolean inPool( ... -
UTC时间, GMT时间 ,夏令时
2017-08-18 15:12 2280经常混淆于此,特地研究了一下,记录在此以备忘。 整个地 ... -
java 反射List
2017-02-18 01:58 5650package com.enhance.reflect; ... -
JDK1.5 Exchange 两个线程互换数据
2016-08-04 18:00 980import java.util.concurrent ... -
JDK1.5 CountDownLatch
2016-08-04 16:25 1054/* * 还有一个利用场景: ... -
java CyclicBarrier 循环障碍阻塞
2016-08-03 23:54 1005//一个同步辅助类,它允许一组线程互相等待,直到到达某个公 ... -
java 信号灯 Semaphore
2016-08-03 23:53 1822更多介绍http://blog.csdn.net/java20 ... -
java 使用读写锁设计一个缓存模型
2016-08-03 23:49 1416import java.util.HashMap; ... -
java 读写锁
2016-08-03 23:46 813import java.util.Random; i ... -
java 多个线程之间同步通信
2016-08-02 17:16 2396import java.util.concurrent ... -
jdk1.5 锁 Lock 和 Condition
2016-08-02 17:03 922// lock 练习 public class Lock ... -
JDK1.5 获取线程执行结果 Callable Future
2016-08-02 15:08 1171import java.util.Random; i ... -
JDK1.5 线程池
2016-08-02 14:48 800import java.util.concurrent ... -
java 多线程ThreadLocal
2016-08-02 00:13 1144import java.util.Random; ... -
java 定时器 Timer
2016-08-01 16:53 3890import java.util.Calendar; ... -
java 多线程同步+通信
2016-08-01 16:48 964/** *父子线程 交替打印10 次, 100次 ... -
java 线程同步
2016-08-01 16:43 1020import java.util.concurrent.l ... -
java多线程练习
2016-08-01 16:35 1838Java 传统多线程 Java 多线程同步 Java 多线 ... -
java 传统多线程
2016-08-01 16:34 1001/** * 传统多线程 */ public ... -
java 图片,剪切,缩放
2016-01-06 10:21 2228package out; import ja ...
相关推荐
5. **使用第三方库**:有一些Java库,如OpenCSV、Apache Commons CSV或JDBC的`ResultSet`,它们提供更高级的功能,包括自动处理编码问题。这些库可以简化读写操作,并减少出错的可能性。 然而,给定的文件列表`...
总之,解决Java中的URL中文乱码问题需要理解URL编码的原理,并在客户端和服务器端采取相应的措施,确保编码和解码的一致性。无论是通过JavaScript编码、Java服务器端解码,还是调整服务器配置,关键在于确保字符集的...
在Java开发过程中,有时我们需要查看或分析已编译的.class文件中的源代码,这就涉及到Java的反编译技术。反编译是将字节码还原为接近原生的源代码的过程,常用工具有JD-GUI,它是一款直观的Java反编译器。然而,当...
总结来说,处理Java中ZIP文件的中文乱码问题,关键在于明确指定字符集,通常是UTF-8,无论是使用Java内置的API还是第三方库。同时,理解文件系统的编码和压缩/解压过程中的字符编码转换也非常重要。通过这种方式,...
JAVA 中文乱码问题是开发过程中常见的问题之一,解决这个问题需要了解乱码产生的原因,然后对症下药。下面我们对容易产生乱码问题的场景进行分析,并提出解决方案。 1. 以 POST 方法提交的表单数据中有中文字符 在...
例如,使用`request.getParameter("params")`获取参数时,如果请求时的编码和服务器端解析的编码不一致,就会出现乱码。在本例中,服务端代码使用了`StringEscapeUtils.unescapeJava`方法进行了解码尝试,该方法可能...
在Java编程中,中文乱码问题是一个常见的困扰,尤其是在处理文件读写、网络传输或数据库操作时。本文将深入探讨几种解决Java中中文乱码问题的方法,并以MyEclipse为开发环境,结合实际示例进行讲解。 1. 文件读写中...
java aspose word 上传到服务器 导出的word 中文字体乱码 的问题 java aspose java aspose word 上传到服务器 导出的word 中文字体乱码 的问题 java aspose java aspose word 上传到服务器 导出的word 中文字体乱码 ...
本文将深入探讨如何在Java中解决Properties文件保存和读取中文乱码的挑战。 首先,我们需要理解Java默认使用ISO-8859-1编码来处理Properties文件。由于此编码不支持大部分中文字符,因此在保存或加载包含中文的...
Java和C++之间进行Socket通信时,可能会遇到乱码问题,主要是由于编码格式不一致导致的。Java默认使用UTF-8编码,而C++在Windows XP环境下可能使用GBK编码。解决这个问题的关键在于确保数据在传输过程中保持正确的...
网上很多描述java解压中文乱码的问题,很多描述不全.由于工作需要整理出一个完整版.简单实用.下载后请从ZipUtil.java的main方法开始,一目了然. public static void main(String args[]) { new ZipUtil().unZip("E:\\...
在Java和C#之间进行Socket通信时,遇到中文乱码问题主要是由于编码格式不一致导致的。Java默认使用UTF-8编码,而C#在处理字符串时可能使用其他编码,如GBK或ASCII。为了解决这个问题,我们需要确保两端在发送和接收...
### Java传值中的乱码问题及最简易的解决方法 在Java Web开发中,经常会遇到一个令人头疼的问题:客户端向服务器传递数据时出现乱码。这种情况不仅会影响用户体验,还可能导致程序逻辑错误。本文将深入探讨Java传值...
PDF转图片是将PDF文档转换成图像格式的过程,这在处理PDF中的中文字符时尤为重要,因为转换后的图片可以避免文字乱码问题。Java中的PDFBox库是一个强大的工具,专门用于处理PDF文档,包括将PDF转换为图像。在这个...
通过上述方法,可以有效地解决Java Web应用中常见的乱码问题,提高用户体验和系统的稳定性。此外,对于更复杂的多语言环境,还应该考虑采用国际化和本地化策略,以更好地支持不同地区的用户需求。
Java中文乱码问题是编程者在开发Java应用程序时经常遇到的问题,尤其是涉及到中文字符处理时。这些问题产生的根本原因在于...通过上述方法,可以最大限度地减少和解决Java中文乱码问题,提高Java程序的兼容性和稳定性。
Java 乱码问题一直是开发过程中常见的困扰之一,它涉及到字符编码的理解、文件编码的设定以及网络传输中的编码处理。本文将深入探讨Java编程中的乱码现象,并提供一系列的解决策略。 首先,我们要理解两个基本概念...
在Java编程中,遇到“java 读取文件乱码”的问题通常是由于编码格式不匹配导致的。当程序按照一种编码方式打开文件,而文件实际采用的是另一种编码时,就会出现乱码现象。解决这个问题需要理解Java中处理字符编码的...
Java 生成 PDF 文件,解决中文乱码问题 Java 生成 PDF 文件,解决中文乱码问题是 Java 编程中常见的问题。解决这个问题的关键是正确地设置中文字体,以避免乱码问题。本文将通过一个完整的示例代码,详细讲解如何...