七个Map的比较,三种方法,将相比结果写入文件。

三种方法的思辨都是遍历一个map的Key,然后2个Map分别取那2个Key值所收获的Value。

一,FileWritter写入文件

#率先种用entry

FileWritter,
字符流写入字符到文件。默许意况下,它会拔取新的始末取代所有现有的始末,然则,当指定一个true
(布尔)值作为FileWritter构造函数的第一个参数,它会保留现有的情节,并追加新情节在文书的末梢。

private void compareMap(Map<String, String> Map01, Map<String, String Map02>){

        for (Map.Entry<String, String> entry : Map1.entrySet())
        {

           String testKey = entry.getKey();

           if(Map1.get(testId).equals(Map2.get(testId))){

                System.out.println("equals");

            }else{

                System.out.println("not equals");

            }
        }
}
  1. 轮换所有现有的始末与新的始末。

#第两种用keyset的法子,把key值存到容器,分别取出相比较

new FileWriter(file);2. 封存现有的始末和附加在该文件的结尾的新情节。

private void compareMap(Map<String, String> Map01, Map<String, String Map02>){  

     Iterator<String> iter = Map1.keySet().iterator();

while (iter.hasNext()) {

            String testKey = iter.next();

       if(Map1.get(testId).equals(Map2.get(testId))){

                System.out.println("equals");

              }else{

                System.out.println("not equals");

            }

manbetx手机网页版,复制代码代码如下:

##其次种用keyset的方式,遍历Key值

new FileWriter(file,true);

public class CompareMap {

    public static void main(String[] args) {

    }

    private void compare(Map<String, String> map1, Map<String, String> map2) {

        for (String testkey : map1.keySet()) {

            if(map1.get(testkey).equals(map2.get(testkey))){

                System.out.println("equals");

            }else{

                System.out.println("not equals");

            }
        }

    }

扩展文件示例

在main方法调用并传递参就能够了,

一个文件文件,命名为“javaio-appendfile.txt”,并带有以下内容。

PS:就算要求将结果(相同的value、分裂的value)写入文件,则可以写一个write方法,在每一遍打印写入文件,加文件地方参数即可

ABC Hello追加新情节 new FileWriter(file,true)

 

复制代码代码如下:

结果写入文件措施write

package com.yiibai.file;

 

import java.io.File;

   public static void write(String file, String valueOfMap1, String valueOfMap2) {

        try {
            BufferedWriter input = new BufferedWriter(new OutputStreamWriter(
                    new FileOutputStream(file, true)));
            input.write("Map1Output: " + valueOfMap1 + "\r\n");
            input.write("Map2Output: " + valueOfmap2 + "\r\n");
            input.newLine();
            input.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

import java.io.FileWriter;

 

import java.io.BufferedWriter;

import java.io.IOException;

public class AppendToFileExample

{

public static void main( String[] args )

{

try{

String data = ” This content will append to the end of the file”;

File file =new File(“javaio-appendfile.txt”);

//if file doesnt exists, then create it

if(!file.exists()){

file.createNewFile();

}

//true = append file

FileWriter fileWritter = new FileWriter(file.getName(),true);

BufferedWriter bufferWritter = new BufferedWriter(fileWritter);

bufferWritter.write(data);

bufferWritter.close();

System.out.println(“Done”);

}catch(IOException e){

e.printStackTrace();

}

}

}

结果

最近,文本文件“javaio-appendfile.txt”内容更新如下:

ABC Hello This content will append to the end of the file

二,BufferedWriter写入文件

缓冲字符(BufferedWriter
)是一个字符流类来拍卖字符数据。分化于字节流(数据转换成字节),你可以平昔写字符串,数组或字符数据保存到文件。

复制代码代码如下:

package com.yiibai.iofile;

import java.io.BufferedWriter;

import java.io.File;

import java.io.FileWriter;

import java.io.IOException;

public class WriteToFileExample {

public static void main(String[] args) {

try {

String content = “This is the content to write into file”;

File file = new File(“/users/mkyong/filename.txt”);

// if file doesnt exists, then create it

if (!file.exists()) {

file.createNewFile();

}

FileWriter fw = new FileWriter(file.getAbsoluteFile());

BufferedWriter bw = new BufferedWriter(fw);

bw.write(content);

bw.close();

System.out.println(“Done”);

} catch (IOException e) {

e.printStackTrace();

}

}

}

三,FileOutputStream写入文件

文本输出流是一种用于拍卖原始二进制数据的字节流类。为了将数据写入到文件中,必须将数据转换为字节,并保存到文件。请参阅上边的完整的例子。

复制代码代码如下:

package com.yiibai.io;

import java.io.File;

import java.io.FileOutputStream;

import java.io.IOException;

public class WriteFileExample {

public static void main(String[] args) {

FileOutputStream fop = null;

File file;

String content = “This is the text content”;

try {

file = new File(“c:/newfile.txt”);

fop = new FileOutputStream(file);

// if file doesnt exists, then create it

if (!file.exists()) {

file.createNewFile();

}

// get the content in bytes

byte[] contentInBytes = content.getBytes();

fop.write(contentInBytes);

fop.flush();

fop.close();

System.out.println(“Done”);

} catch (IOException e) {

e.printStackTrace();

} finally {

try {

if (fop != null) {

fop.close();

}

} catch (IOException e) {

e.printStackTrace();

}

}

}

}

//更新的JDK7例如,使用新的“尝试资源关闭”的方法来轻松处理公事。

package com.yiibai.io;

import java.io.File;

import java.io.FileOutputStream;

import java.io.IOException;

public class WriteFileExample {

public static void main(String[] args) {

File file = new File(“c:/newfile.txt”);

String content = “This is the text content”;

try (FileOutputStream fop = new FileOutputStream(file)) {

// if file doesn’t exists, then create it

if (!file.exists()) {

file.createNewFile();

}

// get the content in bytes

byte[] contentInBytes = content.getBytes();

fop.write(contentInBytes);

fop.flush();

fop.close();

System.out.println(“Done”);

} catch (IOException e) {

e.printStackTrace();

}

}

}

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图