黑马程序员技术交流社区

标题: * 给定一个list集合,完成下列需求,求解答 [打印本页]

作者: 18211001681    时间: 2016-8-8 21:21
标题: * 给定一个list集合,完成下列需求,求解答
/*
         * 给定一个list集合:{"张柏芝","刘德华","张亮","张靓颖","杨颖","黄晓明"}
         * 1.编写一个方法:将list集合中所有姓张的人员写入到D:\\a.txt中
         * 2.编写一个方法:将D:\\a.txt中所有姓张的人员信息读取出来并打印到控制台上 --->默认不是1问写入的数据
         */

作者: 18211001681    时间: 2016-8-8 21:25
package cn.itcast.javaee;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class Demo01 {
        /*
         * 给定一个list集合:{"张柏芝","刘德华","张亮","张靓颖","杨颖","黄晓明"}
         * 1.编写一个方法:将list集合中所有姓张的人员写入到D:\\a.txt中
         * 2.编写一个方法:将D:\\a.txt中所有姓张的人员信息读取出来并打印到控制台上 --->默认不是1问写入的数据
         */
        public static void main(String[] args) throws Exception {
   
                List<String> list = new ArrayList<String>();
                list.add("张柏芝");
                list.add("刘德华");
                list.add("张亮");
                list.add("张靓颖");
                list.add("杨颖");
                list.add("黄晓明");
                writeNameToFile(list);
                readNameFromFile();
        }

        private static void readNameFromFile() throws Exception {
                BufferedReader br = new BufferedReader(new FileReader("D:\\a.txt"));
                String len;
                //编写一个方法:将D:\\a.txt中所有姓张的人员信息读取出来并打印到控制台上 --->默认不是1问写入的数据
                while((len = br.readLine())!= null ){
                          String name = len.substring(0,1);  //切割到第一个字符,姓什么
                          if(name.equals("张")){  //如果姓张
                                   System.out.println(len);
                          }
                }
               
        }

        private static void writeNameToFile(List<String> list) throws Exception {
                BufferedWriter bw = new BufferedWriter(new FileWriter("D:\\a.txt"));
                for (String thisStr : list) {
                        String str = thisStr.substring(0,1);  //切割到第一个字符,姓什么
                        if(str.equals("张")){                 //姓张
                                bw.write(thisStr + " ");
                                bw.newLine();
                                //思考不换行怎么写
                        }
                }
                bw.close();
               
        }
}
作者: 浅色寂语66    时间: 2016-8-8 21:48

package cn.itcast.javaee;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class Demo01 {
        /*
         * 给定一个list集合:{"张柏芝","刘德华","张亮","张靓颖","杨颖","黄晓明"}
         * 1.编写一个方法:将list集合中所有姓张的人员写入到D:\\a.txt中
         * 2.编写一个方法:将D:\\a.txt中所有姓张的人员信息读取出来并打印到控制台上 --->默认不是1问写入的数据
         */
        public static void main(String[] args) throws Exception {
   
                List<String> list = new ArrayList<String>();
                list.add("张柏芝");
                list.add("刘德华");
                list.add("张亮");
                list.add("张靓颖");
                list.add("杨颖");
                list.add("黄晓明");
                writeNameToFile(list);
                readNameFromFile();
        }

        private static void readNameFromFile() throws Exception {
                BufferedReader br = new BufferedReader(new FileReader("D:\\a.txt"));
                String len;
                //编写一个方法:将D:\\a.txt中所有姓张的人员信息读取出来并打印到控制台上 --->默认不是1问写入的数据
                while((len = br.readLine())!= null ){
                          String name = len.substring(0,1);  //切割到第一个字符,姓什么
                          if(name.equals("张")){  //如果姓张
                                   System.out.println(len);
                          }
                }
               
        }

        private static void writeNameToFile(List<String> list) throws Exception {
                BufferedWriter bw = new BufferedWriter(new FileWriter("D:\\a.txt"));
                for (String thisStr : list) {
                        String str = thisStr.substring(0,1);  //切割到第一个字符,姓什么
                        if(str.equals("张")){                 //姓张
                                bw.write(thisStr + " ");
                        }
                }
                bw.close();
               
        }
}

作者: 浅色寂语66    时间: 2016-8-9 00:30
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.Reader;
import java.io.Writer;
import java.util.ArrayList;
import java.util.Collections;
public class dianzhaokuozhan {
        /*给定一个list集合:{"张柏芝","刘德华","张亮","张靓颖","杨颖","黄晓明"}
        1.编写一个方法:将list集合中所有姓张的人员写入到D:\\a.txt中
        2.编写一个方法:将D:\\a.txt中所有姓张的人员信息读取出来并打印到控制台上  --->默认不是1问写入的数据
        */
                public static void main(String[] args) throws Exception {
                        ArrayList<String> names=new ArrayList<String>();
                        Writer out = new FileWriter("D:\\a.txt");
                        BufferedWriter fw= new BufferedWriter(out);
                        //向集合中添加元素
                        Collections.addAll(names, "张柏芝","刘德华","张亮","张靓颖","杨颖","黄晓明");
                        //遍历集合,以张开头的写在D:\\a.txt
                             for (String thisname : names) {
                                     if(thisname.startsWith("张")){
                                             fw.write(thisname);
                                        }
                        }
                             fw.close();
                             //读取文件
                             Reader in = new FileReader("D:\\a.txt");
                                     BufferedReader fr= new BufferedReader(in);
                                     String line = null;
                                    while(null!=(line = fr.readLine())) {
                                            String [] arr=line.split("张");
                                            for (int i = 0; i < arr.length; i++) {
                                                    System.out.println("张"+arr[i]);
                                                }
                    
                                           
                                           
                                    }
                                   
                                    fr.close();               
                }

        }
不用换行的做法




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2