导航:首页 > 编程语言 > java读取txt数组

java读取txt数组

发布时间:2022-11-29 10:24:14

java如何读取txt文本数据并以数组形式一行

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;

public class ReadFiledata {
public static String txt2String(File file){
StringBuilder result = new StringBuilder();
try{
BufferedReader br = new BufferedReader(new FileReader(file));//构造一个BufferedReader类来读取文件
String s = null;
while((s = br.readLine())!=null){//使用readLine方法,一次读一行
result.append(System.lineSeparator()+s);
}
br.close();
}catch(Exception e){
e.printStackTrace();
}
return result.toString();
}

public static void main(String[] args){
File file = new File("F:/card.txt");//我的txt文本存放目录,根据自己的路径修改即可
System.out.println(txt2String(file));
}
}

❷ java 读取txt文件得出数组,希望高手帮我补完却掉的部分并解释一下 如果是单词的呢

import java.util.*;
import java.io.*;

public class order {
public static void main(String[] args) throws IOException {
/***
* 代码填充部分
*/
//文件读取
String line2StrVal = ""; // 第二行
String line3StrVal = ""; // 第三行
int lineIndex = 1; //行索引

//创建连接
BufferedReader reader = new BufferedReader(new FileReader("d:/xiaod.txt"));
String readLine = null; //每行临时存储
//开始读取数据
while((readLine = reader.readLine()) != null){
if(lineIndex == 2){
line2StrVal = readLine;
}else if(lineIndex == 3){
line3StrVal = readLine;
}
lineIndex++;
}
reader.close(); // 关闭资源

//查看读取数据
System.out.println(line2StrVal);
System.out.println(line3StrVal);

//开始将读取数据加载到数组中
String[] arrayVal = line2StrVal.split(" ");
int a[] = new int[line2StrVal.split(" ").length];
for(int i=0;i<arrayVal.length;i++){
a[i]= Integer.parseInt(arrayVal[i]);
}
arrayVal = line3StrVal.split(" ");
double b[] = new double[line3StrVal.split(" ").length];
for(int i=0;i<arrayVal.length;i++){
b[i]= Double.parseDouble(arrayVal[i]);
}

/**
* 代码填充结束
*/
double array[] = new double[1];
for (int i = 0; i < array.length; i++) {
array[i] = a[i] * b[i];
System.out.print("Total Number of Items:");
System.out.println(a[0] + a[1] + a[2] + a[3] + a[4] + a[5]);
System.out.print("Final Cost:$ ");
System.out.println(a[0] * b[0] + a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4] + a[5] * b[5]);

}
}
}

❸ Java 怎样读取TXT文件并把每行内容赋值到一个数组里面,最好能有全部代码。

			JFramejf=newJFrame("io");//窗体
Containerc=jf.getContentPane();//这个窗体的容器
JTextAreajta=newJTextArea();//文本域
Panelp=newPanel();//面板
JScrollPanejsp=newJScrollPane(jta);//实现不了
jta.setLineWrap(true);//自动换行
JButtonjb2=newJButton("读取文件");

//监听读取按钮
jb2.addActionListener(newActionListener(){
@Override
publicvoidactionPerformed(ActionEvente)
{

try{
Filef=newFile("D:\JAVA实训\eclipse\pratice\a.txt");
InputStreamReaderis=newInputStreamReader(newFileInputStream(f),"gbk");
char[]c=newchar[10];
intlength=is.read(c);//read()方法能少用就少用,指针指向太麻烦
if(length==-1)
{
JDialogjd=newJDialog(jf,"读取内容");
Containerc2=jd.getContentPane();
JLabeljl=newJLabel("你所读取的内容为空",SwingConstants.CENTER);
c2.add(jl);
jd.setBounds(570,200,200,130);
jd.setVisible(true);
is.close();
}else{

jta.setText(newString(c,0,length));
is.close();
}
is.close();
}catch(IOExceptione1){
e1.printStackTrace();
}
}

});

//文本域加到容器

c.add(jsp);
//按钮加到面板再加到容器
p.add(jb2);
c.add(BorderLayout.SOUTH,p);
jf.setBounds(430,150,500,300);
jf.setVisible(true);

主要代码,其实你使用read(char[] c)这个方法,它会把读取到的内容写到“c”这个数组里面,并且返回一int类型的长度给你,还有那个f的路径你自己选好

❹ java编程读取txt文件中的内容放到数组中,计算后再输出到txt文件中,怎么实现

1、创建一个路径为要读取的txt文件的file对象rFile。
2、创建一个路径为要写入的txt文件的file对象wFile。
3、创建一个FileReader对象,传入rFile到构造器。
4、准备一个char数组,FileReader类有一个继承自java.io.Reader的read(char[] cbuf)方法,将字符读入数组。
5、创建一个FileWriter对象,传入wFile到构造器。
6、FileWriter类有一个继承自java.io.Writer的write(char[] cbuf)方法,可以写入字符数组。
7、最后别忘了关闭流。

❺ java读取固定格式的txt文件并放到数组中

FileInputStream fr=new FileInputStream(new File("d:/1.txt"));

BufferedReader br=new BufferedReader(fr);

String str;

String substr;

final int begin=0;

int end=1;

while((str=br.readLine())!=null)//读取文件的一行,循环直到文件读取完成

{

//对文件中的一行,进行字符串的截取。

while(end!=-1)

{

end=str.IndxOf(","); //查找“,”在字符串中的位置,不存在返回-1;

substr=str.substring(begin,end+1);//截取字符串的一部分,从begin开始到end+1结束。

str=str.substring(end+1,str.lenth()); //将剩下的字符串赋值,并再次截取

}

}

❻ java 读取txt存入数组

public static void main(String[] args) {
try {
System.out.println(System.in);

FileReader fileReader = new FileReader("D:\\data.txt");
BufferedReader buf = new BufferedReader(fileReader);

int i = 0;
String readLine = "";
String[] myArray = new String[500]; //100:这个值你自己定义,但不宜过大,要根据你文件的大小了,或者文件的行数
while((readLine = buf.readLine()) != null){
myArray[i] = readLine;
if("33333".equalsIgnoreCase(readLine)){
myArray[i]="aaaaa";
}
i++;
}
}
catch (Exception e) {
e.printStackTrace();
}
}

❼ java 逐行读取txt中的数据存放到数组

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class Test {
public static void main(String[] args) throws NumberFormatException,
IOException {
BufferedReader reader = new BufferedReader(new FileReader("file.txt"));
String line = "";
List<Integer> list = new ArrayList<Integer>();
while ((line = reader.readLine()) != null) {
list.add(Integer.parseInt(line));
}
reader.close();
Integer[] num = list.toArray(new Integer[list.size()]);
System.out.println(Arrays.toString(num));
}
}

❽ Java读取TXT文件数据到数组

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45

import java.io.BufferedReader;
import java.io.FileReader;
import java.util.Arrays;

public class FileToAry {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new FileReader("c:\\test.txt"));//使用BufferedReader 最大好处是可以按行读取,每次读取一行
int n = 0;//定义n
int m = 0;//定义m
int[] U = null;//定义数组
int[] S = null;//定义数组
int index = 0;//索引
String temp;//定义字符串,用于保存每行读取到的数据
while ((temp = br.readLine()) != null) {
int[] ary = aryChange(temp);//通过函数吧字符串数组解析成整数数组
if (index == 0) {
n = ary[0];
m = ary[1];
}
if (index == 1) {
U = ary;
}
if (index == 2) {
S = ary;
}
index++;
}

br.close();// 关闭输入流

// 测试输出
System.out.println("n=" + n + "\tm=" + m + "\n数组U=" + Arrays.toString(U) + "\n数组S=" + Arrays.toString(S));
}

static int[] aryChange(String temp) {// 字符串数组解析成int数组
String[] ss = temp.trim().split("\\s+");// .trim()可以去掉首尾多余的空格
// .split("\\s+")
// 表示用正则表达式去匹配切割,\\s+表示匹配一个或者以上的空白符
int[] ary = new int[ss.length];
for (int i = 0; i < ary.length; i++) {
ary[i] = Integer.parseInt(ss[i]);// 解析数组的每一个元素
}
return ary;// 返回一个int数组
}

❾ java读取txt文件然后赋值二维数组

java读取txt文件然后赋值二维数组实现方法如下:

package shi;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;

public class Test13 {

/**
* 读取文件
* @param filePath
* @return
*/
public static List readTxtFile(String filePath) {
List<String> list = new ArrayList<String>();
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;
while ((lineTxt = bufferedReader.readLine()) != null) {
if (!lineTxt.startsWith("#"))
list.add(lineTxt);
}
read.close();
} else {
System.out.println("找不到文件");
}
} catch (Exception e) {
System.out.println("出错了");
e.printStackTrace();
}
return list;

}

/**
* 创建二维数组
* @param list
* @return
*/
public static String[][] createArray(String filePath){
List<String> list = readTxtFile(filePath);
String array[][] = new String[list.size()][];
for(int i=0;i<list.size();i++){
array[i] = new String[3];
String linetxt=list.get(i);
String[] myArray = linetxt.replaceAll("\s+", "@").split("@");
for(int j=0;j<myArray.length;j++){
if(j<3){
array[i][j]=myArray[j];
}
}
}
return array;
}

/**
* 打印数组
* @param array
*/
public static void printArray(String array[][]){
for(int i=0;i<array.length;i++){
for(int j=0;j<array[i].length;j++){
if(j!=array[i].length-1){
System.out.print("array["+i+"]["+j+"]="+array[i][j]+",");
}
else{
System.out.print("array["+i+"]["+j+"]="+array[i][j]);
}

}
System.out.println();
}
}


public static void main(String args[]) {
String array[][] = createArray("F:\test1.txt");
printArray(array);
}


}

❿ Java 读取.txt文件数据写入数组。

package com.haoge.license;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;

public class test {

/**
* @param args
*/
public static void main(String[] args) {
int i=1;//行数
String a="";//第一行数据
String b="";//第二行数据
int[] k=null;
File filetxt= new File("D:\\test.txt");
FileInputStream fis;
try {
//建立文件输入流
fis = new FileInputStream(filetxt);
InputStreamReader isr = new InputStreamReader(fis);
BufferedReader br = new BufferedReader(isr);
String linetxt="";
while ((linetxt=br.readLine())!=null) {
if(i==1){
a=linetxt.trim();
}else if(i==2){
b=linetxt.trim();
}else{
break;
}
i++;
}
//生成数组
int length=Integer.parseInt(a)/2;
k=new int[length];
for(int j=b.length()/2;j>0;j--){
k[length-j]=Integer.parseInt(b.substring(2*(j-1), 2*j));
}
//打印数据
for(int m=0;m<k.length;m++){
System.out.println("k["+m+"]="+k[m]);
}

} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}

}
}

阅读全文

与java读取txt数组相关的资料

热点内容
python迭代是累计吗 浏览:415
程序员哪些平台接私活 浏览:173
单片机充电电路原理图 浏览:1000
android软件云服务器地址 浏览:213
如何用服务器做内网穿透服务 浏览:401
oracle加密表空间重置密码 浏览:302
mdk编译后目标文件 浏览:615
老人动手解压 浏览:720
小米sd卡解压 浏览:996
程序员那么可爱陆漓替老袁说情 浏览:28
当女程序员遇见问题 浏览:746
32位编译器什么意思 浏览:355
php多参数函数 浏览:17
通达信板块动作源码 浏览:751
matlab完全自学一本通pdf 浏览:251
php源码本地安装 浏览:961
服务器怎么用不会断电 浏览:302
主从服务器有什么用 浏览:213
jstlpdf 浏览:16
安卓原神在哪个app下载 浏览:810