摘要:1:简单判断是UTF-8或不是UTF-8,因为一般除了UTF-8之外就是GBK,所以就设置默认为GBK。按照给定的字符集存储文件时,在文件的最开头的三个字节中就有可能存储着编码信息,所以,基本的原理就是只要读出文件前三个字节,判定这些字节的值,就可以得知其编码的格式。其实,如果项目运行的平台就是中文操作系统,如果这些文本文件在项目内产生,即开发人员可以控制文本的编码格式,只要判定两种常见的编码就可以了:GBK和UTF-8。由于中文Windows默认的编码是GBK,所以一般只要判定UTF-8编码格式。 对于UTF-8编码格式的文本文件,其前3个字节的值就是-17、-69、-65,所以,判定是否是
阅读全文
摘要:1、按字节读取文件内容2、按字符读取文件内容3、按行读取文件内容4、随机读取文件内容5、将内容追加到文件尾部public class ReadFromFile { /** * 以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。 */ public static void readFileByBytes(String fileName) { File file = new File(fileName); InputStream in = null; try { Syste...
阅读全文
摘要:J2ee项目开发过程中用到的数据库操作类此数据库操作封装类在一个省级项目中使用到,在一个集团公司的科技管理项目中也使用过.package jing.dbnew;import java.sql.*;import java.util.*;import javax.sql.rowset.CachedRowSet;import oracle.jdbc.rowset.OracleCachedRowSet;import com.sun.rowset.CachedRowSetImpl;/*** Title:数据库操作类,有数据事物控制功能,请注意main函数中的调用事例* @author 欧朝敬* QQ:3
阅读全文
摘要:package jing.upfile;//java中带有详细说明的FTP,使用sun.net.ftp包下的apiimport sun.net.ftp.*;import sun.net.*;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.ByteArrayOutputStream;import java.util.ArrayList;import java.util.StringTokenizer;/** FTP远程命令列表<br>USER PORT RETR ALLO DE
阅读全文
摘要:package tools;import java.util.*;import java.text.*; //日期处理用到的包import java.util.regex.*;import java.lang.*;import java.math.*;/*** <p>Title: 常用基础函数</p>* <p>Description: 以下全部是静态函数</p>* <p>Copyright: Copyright (c) 2005</p>* <p>Company: 静靖工作室</p>* “@depre
阅读全文
摘要:JDK LoggerJDK Logger在java.util.logging包下面,自从JDK1.4就有了,可是因为log4j的存在,这个Logger一直沉默着。Java自带的Logger,级别比Log4j还要详细,但是如果需要自定义日志输出格式,需要自己实现Formatter,有些不方便。Log4jLog4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务 器、NT的事件记录器、UNIX Syslog守护进程等;用户也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,用户能够更加细致地控制日志的生成
阅读全文
摘要:package com.han; import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Container;
import java.awt.Graphics2D;
import java.util.Random; import javax.swing.JFrame; /** * 利用线程在Swing窗口(顶级Container, 与JFrame有区别在于多了标题栏的空间)中画动态线条 * * @author HAN * */
public class ThreadAndSwing_3 ext...
阅读全文
摘要:package com.han; import java.awt.Container;
import java.io.IOException; import javax.imageio.ImageIO;
import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel; public class ThreadAndSwing_2 extends JFrame { /** * */ private static final l...
阅读全文
摘要:package com.han; import java.awt.*;
import javax.swing.*;
/** * 使用了线程中断在swing进度条中的应用,在run()中调用JProgressBar的setValue()方法。 * <p> * 本例应用了线程的中断,2种中断方法: * <ul> * <li>运用interrupt()方法</li> * <li>在run()中使用无限循环,然后用一个布尔什标记去控制循环的停止</li> * </ul> * 另外,还有内部类与匿名内部类的分别使用。 *
阅读全文
摘要:在代码中读取一些资源文件(比如图片,音乐,文本等等),在集成环境(Eclipse)中运行的时候没有问题。但当打包成一个可执行的jar包(将资源文件一并打包)以后,这些资源文件找不到,如下代码:Java代码 //源代码1: package edu.hxraid; import java.io.*; public class Resource { public void getResource() throws IOException{ File file=new File("bin/resource/res.txt"); Buff...
阅读全文
摘要://也可利用JOptionPane的构造方法自定义对话框,//如:自己做一个输入密码的对话框 final JPasswordField field=new JPasswordField(); field.setEchoChar('*'); field.requestFocusInWindow(); Object[] message = { "请输入当前用户密码:", field}; JOptionPane pane = new JOptionPane(message, JOptionPane.INFORMATION_MESSAGE){ private sta
阅读全文
摘要:The following figure shows the JTextComponent hierarchy:
阅读全文
摘要:package com.han; import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.Vector; import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swi..
阅读全文
摘要:package com.han; import java.awt.BorderLayout;
import java.awt.Container;
import java.util.Vector; import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextFie..
阅读全文
摘要:package com.han; import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Point;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.InputEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.Win.
阅读全文
摘要:package com.han; import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.util.Vector; import javax.swing.DefaultComboBoxModel;
import javax.swing.JComboBox;
import javax.swing.JFrame; /** * 捕获选项事件ItemEvent * @author...
阅读全文
摘要:package com.han; import java.awt.event.WindowEvent;
import java.awt.event.WindowListener; import javax.swing.JFrame; /** * 捕获其他窗口事件 * @author HAN * */
public class WindowEvent_3 extends JFrame { /** * */ private static final long serialVersionUID = 9040264048222645786L; public Windo...
阅读全文
摘要:package com.han; import java.awt.Frame;
import java.awt.event.WindowEvent;
import java.awt.event.WindowStateListener; import javax.swing.JFrame; /** * 捕获窗口状态事件 * @author HAN * */
public class WindowEvent_2 extends JFrame { /** * */ private static final long serialVersionUID = -2809729...
阅读全文
摘要:package com.han; import java.awt.event.WindowEvent;
import java.awt.event.WindowFocusListener; import javax.swing.JFrame; /** * 捕获窗口焦点事件 * @author HAN * */
public class WindowEvent_1 extends JFrame { /** * */ private static final long serialVersionUID = 6385933774053272194L; public ...
阅读全文
摘要:package com.han; import java.awt.Container;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener; import javax.swing.JFrame; /** * 监听鼠标事件 * 可以看出,当双击鼠标时,第一次的点击会触发一次单击事件 * @author HAN * */
public class MouseEvent_1 extends JFrame { /** * */ private static final long se...
阅读全文