不知道你的文件格式,不過你可以可以嘗試用io流來讀取。下面代碼 我試過是可以讀取挺多格式文件的,你試下 拷貝過去改下文件路徑就行了。
10年積累的做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)經(jīng)驗(yàn),可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有阜陽免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class ReadFile
{
public static void main(String[] args)
{
//文件位置
String filepath = "D:\\test.pub";
/** 一次讀取所有內(nèi)容 */
FileInputStreamReadFile(filepath);
System.out.println("=====================");
/** 以行為單位讀取文件,常用于讀面向行的格式化文件 */
BufferedReaderReadFile(filepath);
System.out.println("=====================");
/** 以字節(jié)為單位讀取文件,常用于讀二進(jìn)制文件,如圖片、聲音、影像等文件。 */
ReadFileByByte(filepath);
System.out.println("\n=====================");
/** 以行為單位讀取文件,常用于讀面向行的格式化文件 */
InputSteamReaderReadFile(filepath);
System.out.println("\n=====================");
}
private static void InputSteamReaderReadFile(String filepath)
{
try
{
InputStreamReader sr = new InputStreamReader(new FileInputStream(new File(filepath)));
int temp = 0;
while ((temp = sr.read()) != -1)
{
System.out.print((char)temp);
}
sr.close();
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
}
private static void ReadFileByByte(String filepath)
{
try
{
File file = new File(filepath);
FileInputStream fis = new FileInputStream(file);
int b = 0;
while ((b = fis.read()) != -1)
{
System.out.print((char)b);
}
fis.close();
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
}
private static void BufferedReaderReadFile(String filepath)
{
try
{
StringBuffer sb = new StringBuffer();
BufferedReader br = new BufferedReader(new FileReader(new File(filepath)));
String readLine = "";
while ((readLine = br.readLine()) != null)
{
sb.append(readLine + "\n");
}
br.close();
System.out.print(sb.toString());
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
}
private static void FileInputStreamReadFile(String filepath)
{
try
{
File file = new File(filepath);
FileInputStream fis = new FileInputStream(file);
long filelength = file.length();
byte[] bb = new byte[(int)filelength];
fis.read(bb);
fis.close();
System.out.println(new String(bb));
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
不知道你的文件格式,不過你可以可以嘗試用io流來讀取。下面代碼 我試過是可以讀取挺多格式文件的,你試下。
字節(jié)流讀取數(shù)據(jù)例子如下:
import?java.io.File;
import?java.io.FileInputStream;
import?java.io.FileNotFoundException;
import?java.io.FileOutputStream;
import?java.io.IOException;
/**
*?復(fù)制文件
*?@author?young
*
*/
public?class?CopyFile?{
public?static?void?main(String[]?args)?{
/*?指定源exe文件的存放路徑?*/
String?str?=?"f:/jdk-1_5_0_06-windows-i586-p.exe";
/*?指定復(fù)制后的exe的目標(biāo)路徑?*/
String?strs?=?"e:/copy.exe";
/*?創(chuàng)建輸入和輸出流?*/
FileInputStream?fis?=?null;
FileOutputStream?fos?=?null;
try?{
/*?將io流和文件關(guān)聯(lián)?*/
fis?=?new?FileInputStream(str);
fos?=?new?FileOutputStream(strs);
byte[]?buf?=?new?byte[1024?*?1024];
int?len;
while?((len?=?fis.read(buf))?!=?-1)?{
fos.write(buf,?0,?len);
}
}?catch?(FileNotFoundException?e)?{
//?TODO?Auto-generated?catch?block
e.printStackTrace();
}?catch?(IOException?e)?{
//?TODO?Auto-generated?catch?block
e.printStackTrace();
}?finally?{
try?{
fis.close();
fos.close();
}?catch?(IOException?e)?{
//?TODO?Auto-generated?catch?block
e.printStackTrace();
}
}
}
}
system.in.read()做不到,
用輸入輸出流吧:
很長很多的代碼,我學(xué)一年才記住的,現(xiàn)在忘了……
查了查:先加這個(gè)包:import
java.io.*;()主函數(shù)代碼如下:
public
static
void
main(String[]
args)
throws
IOException{
InputStreamReader
reader
=
new
InputStreamReader(System.in);
BufferedReader
input
=
new
BufferedReader(reader);
String
s
=
input.readLine();/*執(zhí)行輸入流操作*/
int
x
=
Integer.parseInt(s);/*加個(gè)int型的轉(zhuǎn)換*/
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class IOTest {
public static void main(String[] args) {
String str = "123\r\n456";
writeFile(str);//寫
String str1 = readFile();//讀
System.out.println(str1);
}
/**
* 傳遞寫的內(nèi)容
* @param str
*/
static void writeFile(String str) {
try {
File file = new File("d:\\file.txt");
if(file.exists()){//存在
file.delete();//刪除再建
file.createNewFile();
}else{
file.createNewFile();//不存在直接創(chuàng)建
}
FileWriter fw = new FileWriter(file);//文件寫IO
fw.write(str);
fw.flush();
fw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 返回讀取的內(nèi)容
* @return
*/
static String readFile() {
String str = "", temp = null;
try {
File file = new File("d:\\file.txt");
FileReader fr = new FileReader(file);
BufferedReader br = new BufferedReader(fr);//文件讀IO
while((temp = br.readLine())!=null){//讀到結(jié)束為止
str += (temp+"\n");
}
br.close();
fr.close();
} catch (IOException e) {
e.printStackTrace();
}
return str;
}
}
剛寫的,夠朋友好好學(xué)習(xí)一下啦,呵呵
多多看API,多多練習(xí)