Java – read the newline character in CSV, which is referenced in the file in flatfileitemreader of spring batch
                                        
                    •
                    Java                                    
                I tried to parse CSV files with flatfileitemreader This CSV contains some referenced line breaks, as shown below
email,name abc@z.com,"NEW NAME ABC"
However, the parsing failed. The required field is 2, but the actual field is 1
What am I missing in the flatfilereader configuration?
<property name="lineMapper">
            <bean class="org.springframework.batch.item.file.mapping.DefaultLineMapper">
                <!-- The lineTokenizer divides individual lines up into units of work -->
                <property name="lineTokenizer">
                    <bean
                        class="org.springframework.batch.item.file.transform.DelimitedLineTokenizer">
                        <!-- Names of the CSV columns -->
                        <property name="names"
                            value="email,name" />
                    </bean>
                </property>
                <!-- The fieldSetMapper maps a line in the file to a Product object -->
                <property name="fieldSetMapper">
                    <bean
                        class="com.abc.testme.batchjobs.util.CustomerFieldSetMapper" />
                </property>
            </bean>
        </property>
Solution
The out of the box flatfileitemreader uses simplerecordseparatorpolicy as your use case
>The comment section exceeds 2 or more lines
You need to set defaultrecordseparatorpolicy
Javadoc referencing it:
Sample XML configuration
<bean id="reader" 
      class="org.springframework.batch.item.file.FlatFileItemReader">
      ...
    <property name="recordSeparatorPolicy">
        <bean class="org.springframework.batch.item.file.separator.DefaultRecordSeparatorPolicy" />
    </property>
      ...
</bean>
                
                            The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
                        
                                            
                        THE END
                    
                    
                    
                                                        二维码
                        
                        
                                                
                        