import?java.io.*;
創(chuàng)新互聯(lián)建站,為您提供重慶網(wǎng)站建設(shè)公司、網(wǎng)站制作、網(wǎng)站營銷推廣、網(wǎng)站開發(fā)設(shè)計,對服務(wù)成都輕質(zhì)隔墻板等多個行業(yè)擁有豐富的網(wǎng)站建設(shè)及推廣經(jīng)驗。創(chuàng)新互聯(lián)建站網(wǎng)站建設(shè)公司成立于2013年,提供專業(yè)網(wǎng)站制作報價服務(wù),我們深知市場的競爭激烈,認真對待每位客戶,為客戶提供賞心悅目的作品。 與客戶共同發(fā)展進步,是我們永遠的責(zé)任!
public?class?FileDemo{
public?static?void?main(String[]?args)throws?Exception{
//第一個參數(shù)是文件路徑,第二個參數(shù)是要搜索的文件擴展名
getFile("D:\\JavaDemo",".txt");
}
private?static?void?getFile(String?pathName,?final?String?endsWith)throws?Exception{
File?file?=?new?File(pathName);
if(!file.exists())
throw?new?RuntimeException("文件不存在,你檢索個P呀。");
file.listFiles(new?FileFilter(){
public?boolean?accept(File?file){
if(file.getName().endsWith(endsWith)){
System.out.println(file.getName());
return?true;
}else
return?false;
}
});
}
}
這個很簡單的,不是什么問題。但是,重點是,你的小說是什么格式。咱們以最常見的txt格式為例來討論這個問題。
1.數(shù)據(jù)庫里應(yīng)該設(shè)計“小說”表,存儲每一本“小說”的信息。而這個表里,需要有小說的id,名稱,作者等信息,而對應(yīng)的,還需要有一個小說存儲的地址信息,這個地址,就是小說在你服務(wù)端的地址,即你服務(wù)器硬盤上的存儲路徑。
2.客戶在讀小說時,客戶端發(fā)送請求,服務(wù)端接收了客戶請求,通過請求數(shù)據(jù)庫,找到每本“小說”的在服務(wù)器硬盤上的地址,然后可以選擇將字符串讀取出來傳送回客戶端,或者直接把地址告訴客戶端讓用戶進行下載。
3.明白了這個設(shè)計,更新也很簡單。更新時,首先需要將小說上傳至服務(wù)端硬盤;然后更新數(shù)據(jù)庫,將小說的各種信息,包括存儲地址,維護進數(shù)據(jù)庫(這一步可以專門做一個管理頁面進行維護),這樣一本新的小說就更新完成了。
4.以上是大體的設(shè)計實現(xiàn)思路,你可以根據(jù)你的實際情況看下是否可行。
如果單線程來實現(xiàn),就是一個主程序去爬,不斷遍歷。很簡單的。
如果多線程,就主程序控制多線程去進行遍歷。最好用一個線程池來進行管理,否則會隨著遍歷系統(tǒng)資源消耗過大的。
public static void main(String[] args) {
try{
File file = new File("E:\\a.txt");//創(chuàng)建文件對象
BufferedReader br = new BufferedReader(new FileReader(file)); //創(chuàng)建讀取流
//讀取數(shù)據(jù)
String temp = br.readLine();
String line;
while((line = br.readLine()) != null){
temp += "," + line;
}
if(temp == null){
System.out.println();
}else{
//分割字符串
String []str = temp.split(",");
//創(chuàng)建double數(shù)組并賦值
Double[] d = new Double[str.length];
for(int i = 0 ;i str.length ;i++){
d[i] = Double.parseDouble(str[i]);
}
//打印double數(shù)組
for(int i = 0 ; i d.length ; i++){
System.out.println(d[i]);
}
}
}catch(Exception e){
}
用百度搜索一下,就用“JAVA源代碼“做為搜索條件。一般能找到很多網(wǎng)站。
要學(xué)JAVA最好還是找本書看一看。JAVA能做的東西很多,你要決定你的主攻方向然后就去找相應(yīng)的資料。
你要學(xué)哪方面:
JAVA應(yīng)用程序開發(fā),
JAVA網(wǎng)絡(luò)開發(fā):JSP,APPLET。
JAVA手持設(shè)備軟件開發(fā),像手機軟件等。
如果對程序還不是很懂,最好找本JAVA入門級的書看看,然后再決定。
以下是一些基本的功能代碼,讀取TXT部分代碼來源于網(wǎng)絡(luò):
public static void readTxtFile(String filePath) {
try {
String encoding = "UTF-8";
File file = new File(filePath);
if (file.isFile() file.exists()) { // 判斷文件是否存在
InputStreamReader read = new InputStreamReader(
new FileInputStream(file), encoding);// 考慮到編碼格式
BufferedReader bufferedReader = new BufferedReader(read);
String lineTxt = null;
int offset = 0; //章節(jié)所在行數(shù)
int count = 1; //章節(jié)數(shù)
ListInfoVo list = new ArrayListInfoVo();
InfoVo infoVo;
while ((lineTxt = bufferedReader.readLine()) != null) {
infoVo = new InfoVo();
offset++;
if (lineTxt.contains("第") lineTxt.contains("章")) {
infoVo.setCount(count);
infoVo.setOffset(offset);
infoVo.setTitle(lineTxt);
list.add(infoVo);
count++;
}
}
System.out.println(list.size());
System.out.println(list.get(0).getCount());
System.out.println(list.get(0).getOffset());
System.out.println(list.get(0).getTitle());
read.close();
} else {
System.out.println("找不到指定的文件");
}
} catch (Exception e) {
System.out.println("讀取文件內(nèi)容出錯");
e.printStackTrace();
}
}
public static void main(String[] args) {
// Console.mainMenu();
String filePath = "C:\\20130815.txt";
readTxtFile(filePath);
}
InfoVo結(jié)構(gòu):
public class InfoVo {
private Integer count;
private Integer offset;
private String title;
public Integer getCount() {
return count;
}
public void setCount(Integer count) {
this.count = count;
}
public Integer getOffset() {
return offset;
}
public void setOffset(Integer offset) {
this.offset = offset;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
}
分享題目:全網(wǎng)搜索小說Java代碼 java小說網(wǎng)站
文章起源:http://jinyejixie.com/article6/dosdeog.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設(shè)、App設(shè)計、、網(wǎng)站內(nèi)鏈、外貿(mào)建站、小程序開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)