Java 小例子:下载并保存网络小说
本示例从网上下载一本小说,并保存为 UTF-8 格式。
import java.io.BufferedReader;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
/**
* 下载文本文件,并以指定的编码保存
* @author hyd
*/
public class DownloadTextAndSave {
// 要下载的文件位置
private static final String FILE_URL = "http://www.9251.com/DownLoad/File/Book/xh/DownloadFile/qzlz20091116.txt";
// 要保存的文件名(或路径)
private static final String SAVE_AS_FILE_NAME = "novel.txt";
// 保存使用的编码
private static final String SAVE_AS_ENCODING = "UTF-8";
// 程序入口
public static void main(String[] args) throws Exception {
String content = download(FILE_URL);
saveAs(content, SAVE_AS_FILE_NAME, SAVE_AS_ENCODING);
}
// 以指定编码保存文件
private static void saveAs(String content, String filename, String SAVE_AS_ENCODING) throws IOException {
// 创建文件
File file=new File(filename);
if (!file.exists()) {
file.createNewFile();
}
// 写入内容
Writer writer = new OutputStreamWriter(new FileOutputStream(file), SAVE_AS_ENCODING);
try {
writer.write(content);
} finally {
writer.close();
System.out.println("文件保存完毕。");
}
}
// 下载指定位置的文本文件,并返回文件内容
private static String download(String FILE_URL) throws MalformedURLException, IOException {
URLConnection conn = new URL(FILE_URL).openConnection();
System.out.println("正在打开 \"" + FILE_URL + "\"...");
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStre
相关文档:
BigDecimal类
双精度浮点型变量double可以处理16位有效数。在实际应用中,需要对更大或者更小的数进行运算和处理。Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。表5.7中列出了BigDecimal类的主要构造器和方法。
表5.7 BigDecimal类的主要构造器和方法
构造器描述
BigDecimal(in ......
1.如何学习程序设计?
JAVA是一种平台,也是一种程序设计语言,如何学好程序设计不仅仅适用于JAVA,对C++等其他程序设计语言也一样管用。有编程高手认为,JAVA也好C也好没什么分别,拿来就用。为什么他们能达到如此境界?我想是因为编程语言之间有共通之处,领会了编程的精髓,自然能够做到一通百通。如 ......
一、Array , Arrays
Java所有“存储及随机访问一连串对象”的做法,array是最有效率的一种。
1、
效率高,但容量固定且无法动态改变。
array还有一个缺点是,无法判断其中实际存有多少元素,length只是告诉我们array的容量。
2、Java中有一个Arrays类,专门用来操作array。
a ......
正则表达式是字符串处理的终极武器,本文以一个具体题目简介java对正则表达式的支持。
题目:将一个字符串中的形如href=“XXXX”和src=“XXXX”的部分取出,打印。
处理正则表达式主要用到java.util.regex.Matcher和java.util.regex.Pattern两个类。
\\测试用的字符串
String source= "...href=\" ......