Text file parsing
hi everybody
I am creating a application in which i am reading a text file from resource and using this text in my canvas but i am facing problem in fetching some characters like currency sign like euro in text and some other characters that are not in normal character set so how can i use these in my application.
Message was edited by:
nj_java
search on this forum, we had few weeks ago a discussion on chinese encoding...
it could be the same answers.
Similar Messages
-
Hi,
I'm extremely new to Java and need to read and parse a text file and generate a new text file with modifications as follows:
1. Ignore and rewrite comments
2. Ignore and rewrite compiler commands
3. (a) Modify function prototypes be removing their return values, if any,
(b) append an '_VAR' to the function name and args
(c) add an ampersand to the args when passed by reference
sample input file:
/***** comment *****/
#if (INCLUDE_STATIC_BUILD == OS_FALSE)
extern OS_MEMORY_POOL *MEM_Non_Cached;
#endif
UINT16 TLS_IP_Check (const UINT16 *s, UINT16 len);
INT32 MEM_Copy_Data(NET_BUFFER buf_ptr, const CHAR HUGE buffer, INT32 numbytes, UINT16 flags);
sample output file:
/***** comment *****/
#if (INCLUDE_STATIC_BUILD == OS_FALSE)
extern OS_MEMORY_POOL *MEM_Non_Cached;
#endif
UINT16_VAR = TLS_IP_Check (&UINT16_VAR, UINT16_VAR);
INT32_VAR = MEM_Copy_Data(&NET_BUFFER_VAR, name, INT32_VAR, UINT16_VAR);
I would appreciate any help!
Thanks.Check replies on the other post
http://forum.java.sun.com/thread.jspa?threadID=680728&tstart=0 -
Hello.
Anyone have an idea how to parse txt file in format
[2014-12-27 20:44:02] Server->request : Array
[login] => 1111111
[date] => 2014-12-29
[dealid] => 111111111
[details] => Array
[Exception] => Array
[field] => Array
[errors] =>
Array
[error]
=> Array
[code] => 15896
[description] =>not possibleIts multiple sequences
[2014-12-27 20:44:02] Server->request : Array
[2014-12-27 20:50:01] Server->request : Array
I need to get date
[2014-12-27 20:44:02], login [login] => 1111111, and err code [code] => 15896 -
How to parse data from a text file with no convenient delimiters?
I need to read data from a text file. This file contains one line of data with the repeating pattern "time 00 ADVar2: ___ Height: ____ time 01 ADVar2: ___ Height: ___ ..." I need LabView to parse out the "time" and "height" values, build an array with the values, and graph the correlation on an X&Y plot. Does Labview have an automated way to read to the input data file and parse out the correct values, even without convenient delimiters? Thank you.
You actually do have a convenient delimiter: "time". Thus, you can make an array using that as the delimiter. Only caveat is that the first array element will be empty. Then you can conveniently use the Scan From String function in a for-loop. Something like this:
Message Edited by smercurio_fc on 11-21-2008 03:13 PM
Attachments:
Example_VI.png 9 KB -
Create SSIS Import parsing based on text file...
I have a text file listing 500 field names and their lengths. (In a few months we will begin receiving monthly data files matching that schema). I can create an SSIS 2008 project and manually parse the columns (inside SSIS) to match that
schema but I wonder if there is an easier way to do what I want (e.g. if I created a table using t-sql commands could SSIS somehow "pickup" the SSIS parsing from the table schema?)
TIA,
edm2Not exactly. What I was hoping for is that instead of pointing SSIS to the data file and manually parsing all the fields that I could create an (empty) table with the right schema and have SSIS use that table schema to define how it should
parse the input data. (Kind of backwards from the usual approach.)
edm2
Sorry you cant parse text file for metadata like that as metadata has to fixed in SSIS
However one way you can implement this is as follows
1. Create your table with required schema
2. In SSIS have a data flow task with flat file source which points to your file. Choose only a row delimiter and no column delimiter
3. Put a oledb destination and point to staging table with an identity column
4. Put a Execute SQL Task with query as below
SELECT CASE WHEN (SELECT Column FROM Staging WHERE IDCol=1) = STUFF((SELECT ',' + COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'Your schema table name'
AND TABLE_SCHEMA = 'dbo'
FOR XML PATH('')),1,1,'')
THEN 0
ELSE 1
END AS SchemaDiff
FROM (SELECT 1)t
Then map SchemaDiff column in the resultset to a boolean variable created in ssis. Also make sure you set resultset option to single row
Then you can use this boolean variable to check if schema is same. If False means no difference in schema else there's difference.
just a caution thar this will only compare column details without comparing their datatypes,lengths etc
Please Mark This As Answer if it solved your issue
Please Vote This As Helpful if it helps to solve your issue
Visakh
My Wiki User Page
My MSDN Page
My Personal Blog
My Facebook Page -
VBScript for parsing multiple text files
Hi,
I have around 175 text files that contain inventory information that I am trying to parse into an Excel file. We are upgrading our Office platform from 2003 to 2010 and my boss wants to know which machines will have trouble supporting it. I found a script
that will parse a single text file based upon ":" as the delimiter and I'm having trouble figuring out how to change it to open an entire folder of text files and write all of the data to a single Excel spreadsheet. Here is an example of the text
file I'll be parsing. I'm interested in the "Memory and Processor Information" and "Disk Drive Information" sections mainly.
ABEHRENS-XP Computer Inventory
OS Information
OS Details
Caption: Microsoft Windows XP Professional
Description:
InstallDate: 20070404123855.000000-240
Name: Microsoft Windows XP Professional|C:\WINDOWS|\Device\Harddisk0\Partition1
Organization: Your Mom
OSProductSuite:
RegisteredUser: Bob
SerialNumber: 55274-640-3763826-23029
ServicePackMajorVersion: 3
ServicePackMinorVersion: 0
Version: 5.1.2600
WindowsDirectory: C:\WINDOWS
Memory and Processor Information
504MB Total memory HOW CAN I PULL THIS WITHOUT ":" ALSO
Computer Model: HP d330 uT(DG291A)
Processor: Intel(R) Pentium(R) 4 CPU 2.66GHz
Disk Drive Information
27712MB Free Disk Space ANY WAY TO PULL THIS WITHOUT ":"
38162MB Total Disk Space
Installed Software
Here is the start of the script I have so far. . .
Const ForReading = 1
Set objDict = CreateObject("Scripting.Dictionary")
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile("C:\Test\test.txt" ,ForReading)
WANT THIS TO BE C:\Test
Do Until objTextFile.AtEndOfStream
strLine = objTextFile.ReadLine
If Instr(strLine,":") Then
arrSplit = Split(strLine,":") IS ":" THE BEST DELIMITER TO USE?
strField = arrSplit(0)
strValue = arrSplit(1)
If Not objDict.Exists(strField) Then
objDict.Add strField,strValue
Else
objDict.Item(strField) = objDict.Item(strField) & "||" & strValue
End If
End If
Loop
objTextFile.Close
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
objExcel.Workbooks.Add
intColumn = 1
For Each strItem In objDict.Keys
objExcel.Cells(1,intColumn) = strItem
intColumn = intColumn + 1
Next
intColumn = 1
For Each strItem In objDict.Items
arrValues = Split(strItem,"||")
intRow = 1
For Each strValue In arrValues
intRow = intRow + 1
objExcel.Cells(intRow,intColumn) = strValue
Next
intColumn = intColumn + 1
Next
Thank you for any help.You are The Bomb.com! I had to play around with it to pull some additional data (model and processor) and then write a quick macro to remove the unwanted text and finally I wanted the data to write in columns instead of rows so this is what I ended up with:
Option Explicit
Dim objFSO, objFolder, strFolder, objFile
Dim objReadFile, strLine, objExcel, objSheet
Dim intCol, strExcelPath
Const ForReading = 1
strFolder = "c:\Test"
strExcelPath = "c:\Test\Inventory.xlsx"
Set objExcel = CreateObject("Excel.Application")
objExcel.Workbooks.Add
Set objSheet = objExcel.ActiveWorkbook.Worksheets(1)
intCol = 0
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder(strFolder)
For Each objFile In objFolder.Files
intCol = intCol + 1
Set objReadFile = objFSO.OpenTextFile(objFile.Path, ForReading)
Do Until objReadFile.AtEndOfStream
strLine = objReadFile.ReadLine
If (InStr(strLine, "Computer Inventory") > 0) Then
objSheet.Cells(intCol, 1).Value = Left(strLine, InStr(strLine, "Computer Inventory") - 2)
End If
If (InStr(strLine, "Total memory") > 0) Then
objSheet.Cells(intCol, 2).Value = Left(strLine, InStr(strLine, "Total memory") - 2)
End If
If (InStr(strLine, "Computer Model:") > 0) Then
objSheet.Cells(intCol, 3).Value = (strLine)
End If
If (InStr(strLine, "Processor:") > 0) Then
objSheet.Cells(intCol, 4).Value = (strLine)
End If
If (InStr(strLine, "Total Disk Space") > 0) Then
objSheet.Cells(intCol, 5).Value = Left(strLine, InStr(strLine, "Total Disk Space") - 2)
End If
If (InStr(strLine, "Free Disk Space") > 0) Then
objSheet.Cells(intCol, 6).Value = Left(strLine, InStr(strLine, "Free Disk Space") - 2)
End If
Loop
Next
objExcel.ActiveWorkbook.SaveAs strExcelPath
objExcel.ActiveWorkbook.Close
objExcel.Quit
Thanks again!
Hi ,
I am have very basic knowledge about VB scripting, but this code could be the perfect solution i am looking for. could you guide me exactly how to run and test the same , i would be really thankful for your kind and generous support on this.
Thanks ,
Veer -
Is there a way where i can parse a method, or conditional statement from a text file? Like lets say that i had the statement in Test.txt
if(X >= Y)
do something
}and X and Y are already defined in the java file, is there a way that i could parse it so that the java code invokes it, as if it were part of the java file?Here's a little Groovy demo:
import groovy.lang.GroovyShell;
* To run this demo,
* - download 'groovy-binary-1.5.5.zip': http://dist.groovy.codehaus.org/distributions/groovy-binary-1.5.5.zip
* - unzip, and add 'lib/groovy-all-1.5.5.jar' to your classpath
public class GroovyDemo {
public static void main(String[] args) throws Exception {
String script =
" if(X > Y) { \n"+
" return X+X \n"+
" } else { \n"+
" return Y/4 \n"+
" } \n";
System.out.println("script=\n"+script);
GroovyShell shell = new GroovyShell();
shell.setProperty("X", new Integer(10));
shell.setProperty("Y", new Integer(9));
Object value = shell.evaluate(script);
System.out.println("value="+value+", "+value.getClass());
shell.setProperty("X", new Integer(8));
value = shell.evaluate(script);
System.out.println("value="+value+", "+value.getClass());
/* output:
script=
if(X > Y) {
return X+X
} else {
return Y/4
value=20, class java.lang.Integer
value=2.25, class java.math.BigDecimal
*/ -
Parse large (2GB) text file
Hi all,
I would like your expert tips on efficient ways (speed and memory considerations) for parsing large text files (~2GB) in Java.
Specifically, the text files in hand contain mobility traces that I need to process. Traces have a predefined format, and each trace is given on a new line in the text file.
To obtain the attribues of each trace i use java.util.regex.Pattern and java.util.regex.Matcher.
Thanks in advance,
NickMemory mapped files are faster when you need random access and you don't need to load all the data, however here it just add complexity you don't need IMHO.
I suspect most of the time is taken by the parser so if you customise your parser it could be faster. Here is a simple custom parser
public static void main(String... args) throws IOException {
String template = "tr at %.1f \"$obj(1) pos 123.20 270.98 0.0 2.4\"%n";
File file = new File("/tmp/deleteme.txt");
// if(!file.exists()) {
System.out.println(new Date()+": Writing to "+file);
PrintWriter pw = new PrintWriter(file);
for(int i=0;i<Integer.MAX_VALUE/template.length();i++)
pw.printf(template, i/10.0);
pw.close();
System.out.println(new Date()+": ... finished writing to " + file + " length= " + file.length() / 1024 / 1024 + " MB.");
long start = System.nanoTime();
final BufferedReader br = new BufferedReader(new FileReader(file), 64 * 1024);
for(String line;(line = br.readLine()) != null;) {
int pos = 6;
int end = line.indexOf(' ', pos);
double time = Double.parseDouble(line.substring(pos, end));
pos = line.indexOf('s', end+12)+2;
end = line.indexOf(' ', pos+1);
double x = Double.parseDouble(line.substring(pos, end));
pos = end+1;
end = line.indexOf(' ', pos+1);
double y = Double.parseDouble(line.substring(pos, end));
pos = end+1;
end = line.indexOf(' ', pos+1);
double z = Double.parseDouble(line.substring(pos, end));
pos = end+1;
end = line.indexOf('"', pos+1);
double velocity = Double.parseDouble(line.substring(pos, end));
br.close();
long time = System.nanoTime() - start;
System.out.printf(new Date()+": Took %,f sec to read %s%n", time / 1e9, file.toString());
{code}
prints
{code}
Sun May 08 09:38:02 BST 2011: Writing to /tmp/deleteme.txt
Sun May 08 09:42:15 BST 2011: ... finished writing to /tmp/deleteme.txt length= 2208 MB.
Sun May 08 09:43:21 BST 2011: Took 66.610883 sec to read /tmp/deleteme.txt
{code} -
Hi,
I am using CF 8
I have a text file (mylog.txt) that currently stores login
information for our users. I need to parse and extract some basic
information from the file and I am having a hard time. I need to
know the following
1. A list of all UNIQUE email addresses that appear in the
text file.
2. A count of how many times each email address appears
Each time a user logs on a "new line" is entered in the text
file. Here is some sample data:
[1/05/08 1:15:31 PM] User [email protected] logged in.
[1/11/08 3:57:30 PM] User [email protected] logged in.
[1/12/08 8:33:17 PM] User [email protected] logged in.
[2/17/08 6:37:07 AM] User [email protected] logged in.
[2/19/08 3:57:30 PM] User [email protected] logged in.
I would like to parse the text file and then output my
results to the screen. The output should look like this, note John
logged in twice:
Email Address | Count
[email protected] 1
[email protected] 2
[email protected] 1
[email protected] 1
The prior user here should have stored this in the database
but for now I still need to get at this data.
Any help appreciated.
Thanks,
-WestsideYou can use cfhttp to convert your file variable to a query
and use query of queries to count email adddresses. -
Could not parse the file contents as a data set. There were too many variable names in the first line of the text file.
What are the Variables settings, what is the text file’s content, …?
-
Using a scanner to parse a text file
Hi,
I'm running into some difficulties using a pattern for my scanner (java.util.Scanner). I need to scan a text file which consists of records. Each record has a keyword and a value (like property files):
Example:
FACILITY=TEST
LOT=1234567
DEVICE=abcdefgNormally, every record will be ended by a carriage return and line feed. So what I did was using a scanner with cr/lf as delimiter. That worked fine for most records but there are some records which span several lines (with cr/lf at the end of each line), e.g.:
MAP_XY.01.01=" Y-7 24/10 Y-6 24 22/17 15/7 Y-5 29/7 5 Y-4 32/22 20
19/15 13/4 Y-3 34/24 22/13 11/2 Y-2 36/30 28/24 22
21/12 10/4 2/0 Y-1 38/0 Y0 40/35 33/22 20/15 13/0 Y1 41
40/32 30/8 6/-1 Y2 42/26 24/-2 Y3 42/-5 Y4 47/11 9
8/3 1/-6 Y5 48/47 45/39 37/18 16/-7 Y6 49/8 6/-8 Y7 49
47/8 6/4 2/-8 Y8 50/9 7/3 1/-9 Y9 51/11 9/-10 Y10 51
50/33 31/-10 Y11 52/40 38/35 33/23 21/16 14/-11 Y12 52
51/34 32/15 13/4 2/-11 Y13 53/40 38/35 33/-12 Y14 53
52/35 33/27 25/18 16/13 11/9 7 5 2/0 -4/-12 Y15 53
52/-12 Y16 53/22 20/-5 -7/-13 Y17 54/47 45/-7 -9/-13 Y18 54
53/22 20 18/2 0/-13 Y19 55/16 14/13 11/-2 -4/-13 Y20 55
53/41 39/35 33/-14 Y21 55/52 50/48 46/16 14/10 8/-2 -4
-6/-14 Y22 54/33 31/7 5/4 2/0 -2/-9 -11/-13 Y23 55
54/53 51/26 24/-2 -4/-13 Y24 55/15 13/-14 Y25 55 53
52/-7 -9/-10 -12/-14 Y26 54/44 42/14 12/10 8/-4 -6
-7/-10 -12/-13 Y27 55/52 50/23 20/16 14/-13 Y28 54
53/12 10/-1 -3/-13 Y29 55/44 42/-13 Y30 55/15 13/10 8
7/-13 Y31 55/17 15/-13 Y32 54/44 42/-1 -3/-13 Y33 54
53/41 39/30 28/-13 Y34 54 52/37 35/19 17/12 9/8 5/3 1
0/-4 -6 -9/-11 Y35 54/-13 Y36 54/35 33/31 29/13 11
10/2 0/-2 -4/-13 Y37 54/-13 Y38 53/11 9/0 -2/-9 -11
-12 Y39 53/35 33/31 29/-12 Y40 53/22 20/15 13/-12 Y41 52
50/15 13/10 8/-11 Y42 52/11 9/5 3/-6 -8/-11 Y43 51
50/41 39/10 8/0 -2/-10 Y44 51/28 26 24/15 13/12 10
9/-10 Y45 50/43 41/32 30/4 2/-9 Y46 49/31 29/13 11
10/-8 Y47 49/47 45/30 28/24 22/-8 Y48 48/42 40 38/12 10
9/-7 Y49 47/42 40/38 36/-6 Y50 44/33 31/30 28/6 4/-5 Y51 44
43/28 26/17 15/13 11/-2 Y52 44/32 30/-2 Y53 43/32 30
29/13 11/-2 Y54 42/27 25/24 22/16 9 7/-1 Y55 41/21 19
18/0 Y56 39/15 13/6 4 2 Y57 38/20 18/3 Y58 36/5 Y59 34
33 31/30 28/7 Y60 31/28 26/10 Y61 27/14"
BIN_COUNT.01.09=12345Using the following delimiter does not work
fileScanner.useDelimiter("\\s*=\\s*");because the result would be something like:
keyword: FACILITY value: TEST
LOTkeyword: 1234567
DEVICE value: abcdefgWhat I need is a pattern which also handles carriage return/line feed until a new keyword (like LOT for example) occurs.
The correct result should be:
keyword: FACILITY value: TEST
keyword: LOT value: 1234567
keyword: DEVICE value: abcdefg
keyword: MAP_XY.01.01 value: " Y-7 24/10 Y-6 24 22/17 15/7 Y-5 29/7 5 Y-4 32/22 20...
{code}
I hope, I did explain clearly enough...
Any help would be appreciated.
Thanks and best regards
- StephanAny help would be appreciated.You have grouping and data in the groupings and you are attempting to parse it all at one go.
Won't work. (Might in a perfect world but not in this one.)
You need a parsers that do the following
1. Parser text file (stream) into records.
2. Parse records into data.
You can put both into one class or not.
Your record parser is going to be based roughly on the following scheme.
1. Find keyword,
2. Look up format defined for keyword
3. Attempt to read format found.
4. Error if format not found.
5. Else return the record found.
I say roughly because as noted above you need to know what the actual output looks like. It is possible to determine this if you have enough examples but it is a lot easier if you actually get the specification that tells you what it looks like.
I suspect, but don't know that the "format" in the above will consist of the following.
<word><text>
or
<word><text>
<space><text>
<space><text>
You could just create one format for the all but you will likely have record types that don't fit that and the earlier you detect errors the better. -
Can I parse Text files in Java Script to populate in select boxes.
The scenario is as follows:
I have two select boxes, the second one depends on the first one for its values.
Values corresponding to the selection made in the first select box are available in a text file.
Can I parse the text file to fill in the values in the second select box through javascript?
Can any one please help.
Thanks,
RameshThis isn't a javascript forum. Java is not Javascript and Javascript is not Java.
If you actually meant Java...the answer is "maybe, depending on what you're doing". -
I have written a vi that parses data out of text files which makes use of the open text file vi. When I compile the vi to run as a stand alone application, The open file dialogue will only accept .vi files for opening. Why is this?
Thanks,
Russ T.Without looking into your program, I am going to guess the following:
If you are using Open/Create/Replace File.vi, wire in "*.txt" to Pattern.
Hope that helps.
Shan Pin Koh
Systems Engineer
Oakriver Technology -
Text File opened in Wordpad cannot be parsed on OBPM 10GR3
Hi all,
Text File opened in Wordpad cannot be parsed on OBPM 10GR3
Why is that?
I use the following code to parse a file:-
textFile = TextFile();
textFile.open(name : "C:\testFile.txt");
logMessage("---Does file exist?--> " + textFile.exists);
foreach (line in textFile.lines) {
logMessage("-- The LINE is-->" + line);
pinBlockProcessing.linesCount = pinBlockProcessing.linesCount + 1;
pinBlockProcessing.deviceIdentifierArray[] = line;
textFile.close();Hi all,
I also used other two methods to parse such a file which can be opened in Wordpad but not in Notepad.
1) I used Java.Util.Scanner
2) I also created and compiled a program/package/class which gets a file and parses it using Java.Util.Scanner using Java in Eclipse.
I created a JAR out of it and tried to use this JAR in my process by introspecting it and then passing the file to be parsed to the methods in this JAR file.
But this did not work either. Although the program does work in plain Java in Eclipse. It compiles and parses a a file which can be opened in Wordpad but not in Notepad.
My program for both these methods was :-
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;
public class Test{
public static void main(String args[]) throws IOException {
FileReader fin = new FileReader("./testFile.txt");
Scanner src = new Scanner(fin);
src.useDelimiter("\n");
while (src.hasNext()) {
System.out.println(src.next());
fin.close();
This does not work either.
All programs and methods work when a text file can be opened in NotePad.
What could be possible solution in OBPM 10GR3?
It is something to do with Carriage Return and generating a file in UNIX which when opened in Notepad shows one straight horizontal line and when opened in Wordpad shows vertical lines. -
Parsing a Text file with nulls in records
Hello All,
I am relatively new to Java programming and I have been given a task that requires me to parse a CSV text file. I have to group the records based on a particular column and then do some math (add columns that have same keys). My problem is that the input file can have nulls and non numeric chars. I am confused how I can proceed in this situation, since I have to add these records, when I do a parseDouble it might fail. OK. I can get around it by assigning a zero in case there is a NumberFormatException but the result of my task is to render an output text file that from the input file. Here comes the catch, the requirement has it, that if the input file had a null or a non numeric char then while rendering the output, I have to populate a code as a place holder for that location where a null or non numeric char was found. I'd like to know if there is any trivial way of getting around this problem without using a Map to remember the location where the null was found. Any help is greatly appreciated. Thanks all in advance.maybemedic wrote:
Mogalr,
The non numeric chars could be any random chars like aabb,null strings etc.In the past I've made small methods that would just check to see if the string was all characters and decimal point... and check formatting... check that it doesn't have 2 decimal points and after it's trimmed that there aren't any spaces and the length is >0.
The checking is slower than using like Double.doubleValue(), unless you hit a format exception. So you have to decide what quality of data you have before committing to you're game plan.
Maybe you are looking for
-
Trouble with Photoshop Elements 8
Every time that I print a photo using Photoshop Elements 8, the photo show vertical lines and the colors are awful. I cannot print a photo using Photoshop Elements 8. I checked the printer and has no any problem. I print all my photos using Windows P
-
Encode PBYTE and save as a jpg
I am trying to make an encoder using WIC and replace the old encoder of an application. I could manage to decode and encode using file, but I need to to do that to the bitmap data which is in PBYTE type. I referred msdn and try to use stream still do
-
A web service that never replies...
Hi! I write a java web service client that sends a soap message to a JAXMServlet that never replies. This is the simple client that sends a soap message and waits for the response: import java.net.*; import java.util.*; import javax.xml.soap.*; publi
-
SQL Query - Where field is NULL
Hello, I am trying to run a simply query. All I want to know is how many fields in a certain column are null and therefore how many columns are not null. I tried this but my numbers do not add up. SELECT * FROM [table.name] WHERE colomn.header< '%'
-
When I take RAW+JPG photos with my new Olympus PEN EP-1 which the unique difference is ISO and I import in Ligtroom: - I can see difference between JPG photos. - I can´t see any difference between RAW photos (In Olympus Master or Olympus Studio I can