`
xfxlch
  • 浏览: 168066 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

processor

阅读更多


import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;

import org.apache.camel.Exchange;
import org.apache.camel.Message;
import org.apache.camel.Processor;
import org.apache.camel.component.file.GenericFile;
import org.apache.camel.component.file.GenericFileConverter;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class CompareProcessor implements Processor {
static Logger LOG = LoggerFactory.getLogger(CompareProcessor.class);
static StringBuilder sb = new StringBuilder();

public CompareProcessor() {
};

public void process(Exchange exchange) {
InputStream inputStream = null;
Message msg = exchange.getIn();
String fileName = (String) msg.getHeader("CamelFileName");
InputStream is = null;
try {
is = GenericFileConverter.genericFileToInputStream(
(GenericFile) msg.getBody(), exchange);
} catch (Exception e1) {
e1.printStackTrace();
}
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
String line = null;
boolean filenotExsit = false;
// reader specify directory file
try {
inputStream = new FileInputStream(new File("end/" + fileName));
System.out.println("SSSSSSSSB:"
+ new File("end/" + fileName).getAbsolutePath());

} catch (FileNotFoundException e1) {
LOG.error("can't find the file:" + fileName +"\t" + e1.getMessage());
filenotExsit = true;
//e1.printStackTrace();
}
BufferedReader reader1 = new BufferedReader(new InputStreamReader(
inputStream));
String line1 = null;
boolean flag = true; //if true, show that there has difference between two files;
try {

int i = 0;
while (true) {
line = reader.readLine();
line1 = reader1.readLine();
i++;
if(i==1){//ignore the first line, compare from second line.
System.out.println("ignore the first line+--" + i);
continue;
}
System.out.println("+++++++++++++++++line-" + line);
System.out.println("+++++++++++++++++line1-" + line1);
if(line != null && line1 != null){
if(!line.equals(line1)){

System.out.println("+++++++++++++++++--" + i);
flag = false;
sb.append(fileName + ";");
break;
}
} else if(line!=null && line1==null){
i++;
System.out.println("+++line!=null && line1==null++--" + i);
flag = false;
sb.append(fileName + ";");
break;
} else if(line==null && line1!=null) {
flag = false;
sb.append(fileName + ";");
break;
} else if(line==null && line1==null){
flag = true;
break;
}
}
    inputStream.close();
is.close();
} catch (IOException e) {
e.printStackTrace();
}
if (!flag) {
System.out.println("++++++++++++++++difference=" + msg);
} else {
System.out.println("@@@@@@@@@@@no difference=");
}
LOG.info("processing:", exchange);
System.out.println(sb.toString());

}

}
分享到:
评论

相关推荐

    spring-boot-configuration-processor-2.5.6-API文档-中英对照版.zip

    赠送jar包:spring-boot-configuration-processor-2.5.6.jar; 赠送原API文档:spring-boot-configuration-processor-2.5.6-javadoc.jar; 赠送源代码:spring-boot-configuration-processor-2.5.6-sources.jar; ...

    spring-boot-configuration-processor-2.6.3-API文档-中英对照版.zip

    赠送jar包:spring-boot-configuration-processor-2.6.3.jar; 赠送原API文档:spring-boot-configuration-processor-2.6.3-javadoc.jar; 赠送源代码:spring-boot-configuration-processor-2.6.3-sources.jar; ...

    POSTPROCESSOR后处理器

    POSTPROCESSOR后处理器是计算机辅助制造(CAM)系统中的一个重要组成部分,主要负责将数控程序(G代码或M代码)转化为适合特定机床或者控制系统理解和执行的形式。在CAM软件中,生成的原始G代码通常包含通用指令,但...

    飞思卡尔Processor expert的用法

    "飞思卡尔Processor expert的用法" 飞思卡尔Processor expert是一款功能强大且灵活的微控制器开发工具,旨在帮助开发者快速搭建和配置飞思卡尔微控制器。下面是Processor expert的使用指南: 一、CPU 设置 在使用...

    获取CPU processor ID,唯一性的ID

    在计算机系统中,CPU(中央处理器)的Processor ID是一个唯一的标识符,用于区分不同处理器。在Windows环境下,可以通过编程方式获取这个ID,特别是在C++语言中。本项目提供了一个VS(Visual Studio)工程,专为在...

    Processor Microarchitecture_An Implementation Perspective

    《Processor Microarchitecture: An Implementation Perspective》一书汇集了近年来发表在ISCA(国际计算机体系结构会议)、HPCA(高性能计算体系结构会议)、MICRO(微处理器会议)和ASPLOS(编程语言与操作系统...

    spring-boot-configuration-processor-2.3.12.RELEASE-API文档-中文版.zip

    赠送jar包:spring-boot-configuration-processor-2.3.12.RELEASE.jar; 赠送原API文档:spring-boot-configuration-processor-2.3.12.RELEASE-javadoc.jar; 赠送源代码:spring-boot-configuration-processor-...

    spring-boot-configuration-processor-2.0.4.RELEASE-API文档-中文版.zip

    赠送jar包:spring-boot-configuration-processor-2.0.4.RELEASE.jar; 赠送原API文档:spring-boot-configuration-processor-2.0.4.RELEASE-javadoc.jar; 赠送源代码:spring-boot-configuration-processor-2.0.4....

    Win32_Processor.doc

    《深入理解Win32_Processor类与处理器信息》 在Windows操作系统中,了解计算机硬件的详细信息对于系统管理和性能优化至关重要。Win32_Processor是Windows Management Instrumentation(WMI)提供的一种类,它用于...

    An Evaluation of CoWare Inc.’s Processor Designer Tool

    通过分析Processor Designer的功能、易用性以及文档质量等方面,我们将全面评估该工具套件的价值。 #### 评估目标与策略 本次评估的主要目标是确定Processor Designer是否适合于课堂教学,并评估其在替代老旧...

    Codewarrior_Processor_Expert使用简介

    ### Codewarrior_Processor_Expert使用简介 #### 一、概述 Codewarrior_Processor_Expert 是一款由 Freescale Semiconductor, Inc. 开发的集成开发环境(IDE),主要用于支持 Freescale 的多种处理器架构,包括 HC08...

    annotationProcessor实例demo

    在Java开发中,`AnnotationProcessor` 是一个强大的工具,它允许开发者在编译期间自动处理源代码,根据注解(Annotation)生成额外的类或修改已有类。这个过程被称为注解处理,是Java编译器的一部分,可以在不需人工...

    Processor_Expert_User_Guide

    ### Processor Expert User Guide #### 关于产品 - 软件产品描述与益处 本发行包包含了一系列软件工具,用于支持面向Freescale HCS12 和 HCS12X 系列微控制器的应用开发。这些工具包括: - **Processor Expert ...

    Processor Expert 中文入门入门指南

    ### Processor Expert 中文入门指南知识点解析 #### 一、Processor Expert 概览 - **简介**:Processor Expert 是一款强大的嵌入式系统开发工具,它主要用于简化基于微控制器的应用程序设计过程。通过图形化界面,...

    spring-boot-configuration-processor-2.6.3-API文档-中文版.zip

    赠送jar包:spring-boot-configuration-processor-2.6.3.jar; 赠送原API文档:spring-boot-configuration-processor-2.6.3-javadoc.jar; 赠送源代码:spring-boot-configuration-processor-2.6.3-sources.jar; ...

    Processor Design System-On-Chip Computing for ASICs and FPGAs

    《Processor Design System-On-Chip Computing for ASICs and FPGAs》一书由Jari Nurmi编辑,主要介绍了处理器设计领域的前沿技术和发展趋势。本书详细探讨了处理器设计的各种方法和技术,包括SuperScaler、VLIW、...

    Intel(R) Processor ID Utility V3.6 Intel CPU ID 检测

    《Intel(R) Processor ID Utility V3.6:深入了解Intel CPU ID检测工具》 Intel(R) Processor ID Utility V3.6是一款由英特尔公司推出的处理器识别工具,主要用于帮助用户检测和了解其计算机中Intel CPU的详细信息...

    spring-boot-configuration-processor-2.0.4.RELEASE-API-中英对照版.zip

    赠送jar包:spring-boot-configuration-processor-2.0.4.RELEASE.jar; 赠送原API文档:spring-boot-configuration-processor-2.0.4.RELEASE-javadoc.jar; 赠送源代码:spring-boot-configuration-processor-2.0.4....

    mapstruct-processor-1.2.0.Final-API文档-中文版.zip

    赠送jar包:mapstruct-processor-1.2.0.Final.jar; 赠送原API文档:mapstruct-processor-1.2.0.Final-javadoc.jar; 赠送源代码:mapstruct-processor-1.2.0.Final-sources.jar; 赠送Maven依赖信息文件:mapstruct...

Global site tag (gtag.js) - Google Analytics