① java 怎样从文件中读取特定的内容,比如从第一个换行读取到第二个换行。求代码
C盘下新建1.txt
② 怎么用JAVA程序从一个TXT文件中按指定行读取内容
基本结构如下,楼主可参考一下:
try{
pwd=System.getProperty("user.dir");//获取当前目录
FileReader
fr
=
new
FileReader(pwd
+
"\\1.txt");
BufferedReader
br
=
new
BufferedReader(fr);
String
Line
=
br.readLine();
while
(Line
!=
null)
{
System.out.println(Line);
Line
=
br.readLine();
}
br.close();
fr.close();
}catch(IOException
ex){}
③ JAVA如何按行数读取txt 比如我要读第10行到第100行 或者第1000行 到 第1200 行
用LineNumberReader行号读取器
FileReader f=new FileReader("test.txt");
LineNumberReader l=new LineNumberReader(f);
l.setLineNumber(10); //跳到第10行
for(int i=10;i<=100;i++){
System.out.println( l.readLine()); //显示第10-100行
}
l.close();
f.close();
④ java 按行读取txt文件的数字
package test;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
public class Test {
public static double[] writeToDat(String path) {
File file = new File(path);
List list = new ArrayList();
double[] nums = null;
try {
BufferedReader bw = new BufferedReader(new FileReader(file));
String line = null;
//因为不知道有几行数据,所以先存入list集合中
while((line = bw.readLine()) != null){
list.add(line);
}
bw.close();
} catch (IOException e) {
e.printStackTrace();
}
//确定数组长度
nums = new double[list.size()];
for(int i=0;i<list.size();i++){
String s = (String) list.get(i);
nums[i] = Double.parseDouble(s);
}
return nums;
}
public static void main(String[] args) {
String path = "d:/file4.txt";
double[] nums = writeToDat(path);
for(int i=0;i<nums.length;i++){
System.out.println(nums[i]);
}
}
}
⑤ 我想用java来读取Excel文件的某行某列,就是指定读取某个位置的数据,然后显示出来!怎么弄求
工作中用到的导入excel一个方法,你还可以通过一些插件导入,代码要你自己了,基本原理如下...
public Object importDoucument(MultipartFile uploadfile)
{
StringBuffer resultMessage = new StringBuffer();
ExcelImport excelImport = new ExcelImport();
Sheet sheet = null;
try
{
// 验证文件格式 如不出错 返回工作簿
excelImport.verifyExeclFile(uploadfile);
ExcelBean excelBean = excelImport.getExcelBean();
if (null != excelBean)
{
sheet = excelBean.getSheet();
}
//导入excel文件分析整理出list对象
List<StcCoreElements> dataList = getAssessCateRange(sheet, "战略要素名称", "战略要素名称", 2, 1);
int num = 0;
if(dataList.size()>0){
for (StcCoreElements itemStcVO : dataList)
{
StcCoreElements stcCoreElementsVo = nitemStcVO
//*****修改些处
this.save(stcCoreElementsVo);
++num;
}
}
resultMessage.append("已成功导入 "+num+" 条核心要素信息");
}
catch (Exception e)
{
resultMessage.append(e.getMessage());
e.printStackTrace();
}
finally
{
excelImport.close();
}
return resultMessage;
}
private List<StcCoreElements> getAssessCateRange(Sheet sheet, String startName, String endName, int rowNum, int titleRowNum)
{
int[] cateRange = new int[2];
List<StcCoreElements> dataList = new ArrayList<StcCoreElements>();
int lastRowNumber = sheet.getLastRowNum();
Row cateRow = sheet.getRow(rowNum - 1);
Cell cateCell = cateRow.getCell(0);
String cateCellValue = ImportExcelUtil.getCellValue(cateCell, sheet);
if (StringUtils.isNotBlank(cateCellValue))
{
if (StringUtils.startsWith(cateCellValue, startName))
{
cateRange[0] = rowNum + titleRowNum;
}
}
String currentCellValue0 = "";
do
{
Row currentRow = sheet.getRow(rowNum);
StcCoreElements info =new StcCoreElements();
Cell currentCell0 = currentRow.getCell(0);
currentCellValue0 = ImportExcelUtil.getCellValue(currentCell0, sheet);
info.setOverallPlan(currentCellValue0);
dataList.add(info);
rowNum++;
} while (rowNum <= lastRowNumber);
return dataList;
}
⑥ 请问java中怎样实现txt文件特定行列的读取
网络这个高质量回答设计的真垃圾,别人都采纳了还不让人看到,浪费精力,真是日了狗了。
代码如下:
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
StringtxtPath="C:/testReadLine.txt";
intlineNo=2;
System.out.println(readTxtLine(txtPath,lineNo));
}
publicstaticStringreadTxtLine(StringtxtPath,intlineNo){
Stringline="";
Stringencoding="GBK";
try{
FiletxtFile=newFile(txtPath);
InputStreamin=newFileInputStream(txtFile);
InputStreamReaderread=newInputStreamReader(in,encoding);
BufferedReaderreader=newBufferedReader(read);
inti=0;
while(i<lineNo){
line=reader.readLine();
i++;
}
reader.close();
}catch(Exceptione){
//TODO:handleexception
}
returnline;
}
⑦ java 读取csv文件里指定行列的值,比如读取第三行第二列的值。
import java.io.BufferedReader;
import java.io.FileReader;
public class Test {
public void test(int row,int col){
try {
BufferedReader reader = new BufferedReader(new FileReader("C:\a.csv"));//换成你的文件名
// reader.readLine();//第一行信息,为标题信息,不用,如果需要,注释掉
String line = null;
int index=0;
while((line=reader.readLine())!=null){
String item[] = line.split(" ");//CSV格式文件为逗号分隔符文件,这里根据逗号切分
if(index==row-1){
if(item.length>=col-1){
String last = item[col-1];//这就是你要的数据了
System.out.println(last);
}
}
//int value = Integer.parseInt(last);//如果是数值,可以转化为数值
index++;
}
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* @param args
*/
public static void main(String[] args) {
Test test = new Test();
test.test(3, 2);
}
}
你的数据格式有问题,空格的个数不确定,没办法每行用空格分隔。以下是我调整后的数据格式每行的数据以一个空格分隔,test方法传入的参数一次是,行,列:
1电机1
2WBS2
3PID3
4CP
5社供出
6原価実绩
7社供WC
8外注费
9直材费
10自家制品
11直経费
12その他
13注残
14注残