不知道你的文件格式,不过你可以可以尝试用io流来读取。下面代码 我试过是可以读取挺多格式文件的,你试下 拷贝过去改下文件路径就行了。
创新互联是一家专注于成都做网站、成都网站设计与策划设计,弋阳网站建设哪家好?创新互联做网站,专注于网站建设10多年,网设计领域的专业建站公司;建站业务涵盖:弋阳等地区。弋阳做网站价格咨询:18980820575
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";
/** 一次读取所有内容 */
FileInputStreamReadFile(filepath);
System.out.println("=====================");
/** 以行为单位读取文件,常用于读面向行的格式化文件 */
BufferedReaderReadFile(filepath);
System.out.println("=====================");
/** 以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。 */
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流来读取。下面代码 我试过是可以读取挺多格式文件的,你试下。
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);
}
/**
* 传递写的内容
* @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();//不存在直接创建
}
FileWriter fw = new FileWriter(file);//文件写IO
fw.write(str);
fw.flush();
fw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 返回读取的内容
* @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){//读到结束为止
str += (temp+"\n");
}
br.close();
fr.close();
} catch (IOException e) {
e.printStackTrace();
}
return str;
}
}
刚写的,够朋友好好学习一下啦,呵呵
多多看API,多多练习
可以使用位运算符来实现,比如:
int num = 0b1001_1001_0000_00;
int firstBit = num 0b1;
int secondBit = (num 1) 0b1;
int thirdBit = (num 2) 0b1;
int fourthBit = (num 3) 0b1;
// 以此类推,可以取到每一位的数值
以下代码可以打印出对象中每个元素
Object[] myobj = {1,2,3,4};
String str;
for(int i = 0; i myobj.length; i++){
Object obj = myobj[i];
str = obj.toString();
System.out.println(str);
}
其中:
Object[] myobj 得到对象数组
Object obj = myobj[i];得到对象数组中每个对象
str = obj.toString();将对象转为字符串。转换为其他类型时要注意出错处理,如元素为非数字类型,转换为数字的情况