关于做Java小程序的一个问题
我想做一个自动分隔字段的程序,就是比如D盘有个文件c.txt,里面的内容是aswerwret,qowieurtsldkjfss,asfsdfsapowqeipr,awrw...
我想做一个自动分隔字段的程序,就是比如D盘有个文件c.txt,里面的内容是
aswerwret,qowieurt
sldkjfss,asfsdfsa
powqeipr,awrwer
我的目的是把所有字头为A的拿出来,在网上查了查,好像是正则表达式能做,但是我不太会用。那么除了正则表达式,用subString能不能写呢?该怎么写呢?求达人指点
附我的代码
package com.String;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import com.sun.org.apache.xalan.internal.xsltc.compiler.Pattern;
import com.sun.org.apache.xerces.internal.impl.xs.identity.Selector.Matcher;
public class TestStringF91 {
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
BufferedReader in = new BufferedReader(new InputStreamReader(
new FileInputStream("D:\\c.txt")));//读取文件所在路径
String str;
String result;
}
}
只写了一部分,指个方向或者帮我修改下代码都可以。我刚学Java不久,不知道的还有很多,请见谅。 展开
aswerwret,qowieurt
sldkjfss,asfsdfsa
powqeipr,awrwer
我的目的是把所有字头为A的拿出来,在网上查了查,好像是正则表达式能做,但是我不太会用。那么除了正则表达式,用subString能不能写呢?该怎么写呢?求达人指点
附我的代码
package com.String;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import com.sun.org.apache.xalan.internal.xsltc.compiler.Pattern;
import com.sun.org.apache.xerces.internal.impl.xs.identity.Selector.Matcher;
public class TestStringF91 {
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
BufferedReader in = new BufferedReader(new InputStreamReader(
new FileInputStream("D:\\c.txt")));//读取文件所在路径
String str;
String result;
}
}
只写了一部分,指个方向或者帮我修改下代码都可以。我刚学Java不久,不知道的还有很多,请见谅。 展开
2个回答
展开全部
先提供思路,你试着做一下,如果不行再追问我。
①使用流读出txt文件内容。(这部分你应该能搞定)
②开始做分析
☆要求:取出a开头的字符串
☆内容规律:字符串以“,”分割
☆使用方法:String的startsWith(String s)判断是否以指定字符串开始、split(String s)以指定字符串分割
☆思路:
· 定义一个String数组,放置分割后的字符串
· 定义一个List对象用于存放a开头的字符串
· 使用for循环,判断每个字符串,将以a开头的字符串放入list
· 输出以a开头的字符串
下面是一个简单的例子
public static void main(String[] args) {
String str= "aswerwret,qowieurt,sldkjfss,asfsdfsa,powqeipr,awrwer,1233aaddd,avvvv"; //N个单词组成的字符串
String[] strs = null; //定义数组用来存放单个的字符串
List<String> list = new ArrayList<String>(); //定义List用于存放a开头的字符串
if(str.indexOf(",") > 0) { //判断是否存在,分隔符
strs = str.split(","); //拆分字符串
int size = strs.length; //获取单词的数量
for(int i=0; i<size; i++) {
if(strs[i].startsWith("a")) //判断是否是以a开头的字符串
list.add(strs[i]);
}
if(!list.isEmpty()) { //判断list中是否有值
for(String s : list) {
System.out.println(s); //输出a开头的字符串
}
}
}
}
感觉还不错的话加分,嘿嘿!最重要的是思路,思而后行,想通了一切ok,good luck
悲催的发现,我在写这段话的时候,有人直接把答案列出来了,悲催!~
①使用流读出txt文件内容。(这部分你应该能搞定)
②开始做分析
☆要求:取出a开头的字符串
☆内容规律:字符串以“,”分割
☆使用方法:String的startsWith(String s)判断是否以指定字符串开始、split(String s)以指定字符串分割
☆思路:
· 定义一个String数组,放置分割后的字符串
· 定义一个List对象用于存放a开头的字符串
· 使用for循环,判断每个字符串,将以a开头的字符串放入list
· 输出以a开头的字符串
下面是一个简单的例子
public static void main(String[] args) {
String str= "aswerwret,qowieurt,sldkjfss,asfsdfsa,powqeipr,awrwer,1233aaddd,avvvv"; //N个单词组成的字符串
String[] strs = null; //定义数组用来存放单个的字符串
List<String> list = new ArrayList<String>(); //定义List用于存放a开头的字符串
if(str.indexOf(",") > 0) { //判断是否存在,分隔符
strs = str.split(","); //拆分字符串
int size = strs.length; //获取单词的数量
for(int i=0; i<size; i++) {
if(strs[i].startsWith("a")) //判断是否是以a开头的字符串
list.add(strs[i]);
}
if(!list.isEmpty()) { //判断list中是否有值
for(String s : list) {
System.out.println(s); //输出a开头的字符串
}
}
}
}
感觉还不错的话加分,嘿嘿!最重要的是思路,思而后行,想通了一切ok,good luck
悲催的发现,我在写这段话的时候,有人直接把答案列出来了,悲催!~
展开全部
package com.String;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
public class TestStringF91{
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream("D:\\c.txt")));// 读取文件所在路径
String str;
while((str=in.readLine())!=null){//获取文件中每一行的字符串
String[] params=str.split(",");//字符串按“,”进行分割
for(int i=0;i<params.length;i++){
if(params[i].startsWith("a")){//判断字符串开头字母为a
System.out.println(params[i]);
}
}
}
}
}
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
public class TestStringF91{
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream("D:\\c.txt")));// 读取文件所在路径
String str;
while((str=in.readLine())!=null){//获取文件中每一行的字符串
String[] params=str.split(",");//字符串按“,”进行分割
for(int i=0;i<params.length;i++){
if(params[i].startsWith("a")){//判断字符串开头字母为a
System.out.println(params[i]);
}
}
}
}
}
追问
我先试试去,好使就选你的答案了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询