Users' Area

:: Generators Library

   > Measures File Reader

   > Labels File Reader

   > Mixed File Reader

   > Image Directory


:: Filters

:: Transformers

:: Aggregators

:: Inspectors

:: Serializers

Delimited File Reader Delimited Measures File Reader

Authors Paolo Ciccarese
Institution Universita' degli Studi di Pavia
Release Date 1st December 2007
Release Version 1.0
License Apache License 2.0
Previous Versions -

quantities for JDPF JDPF Fenerator JDPF Binary

Parameters

Name
Description
Type
Allowed Values
Default
InputFile The URL of the file to read. uri URI MANDATORY
TokensSeparator The regular expression that has to be used to tokenize the read line. string

'tab', 'space' or Java Regular Expression*

tab
LineFormat Defines the order of timestamp (t) and data (d) string { d, dt, td} dt
TimestampFormat It established the format of the date/time value to read [1]. string Java DateFormat* MANDATORY if with timestap
UnitOfMeasure The unit of measure of data to read. string Unit of Measure * none
DataFormat It specifies the format of the data that have to be read [2]. string { int, long, float, double } MANDATORY

[1] If the timestamp is present the TimeStampFormat parameter has to be present and encode according to the Java DateFormat specifications.

[2] The generator will read the data and will try to convert it to the specified numeric kind. If a numeric type is declared and the data is not numeric, an exception will be thrown and the task execution will be terminated.

Example of Delimited Measures File Reader parametrization:

<jdpf:Parameters transitionId="generator0" logging="true">
    <jdpf:Parameter>
        <jdpf:Name>InputFile</jdpf:Name>
        <jdpf:Value>file:///C:\JDPF\TestingExamples\data-12.txt</jdpf:Value>
    </jdpf:Parameter>
    <jdpf:Parameter>
        <jdpf:Name>TokensSeparator</jdpf:Name>
        <jdpf:Value>tab</jdpf:Value>
    </jdpf:Parameter>
    <jdpf:Parameter>
        <jdpf:Name>DataFormat</jdpf:Name>
        <jdpf:Value>int</jdpf:Value>
    </jdpf:Parameter>
    <jdpf:Parameter>
        <jdpf:Name>LineFormat</jdpf:Name>
        <jdpf:Value>td</jdpf:Value>
    </jdpf:Parameter>
    <jdpf:Parameter>
        <jdpf:Name>UnitOfMeasure</jdpf:Name>
        <jdpf:Value>km/h</jdpf:Value>
    </jdpf:Parameter>
    <jdpf:Parameter>
        <jdpf:Name>TimestampFormat</jdpf:Name>
        <jdpf:Value>yyyy.MM.dd HH:mm:ss</jdpf:Value>
    </jdpf:Parameter>
</jdpf:Parameters>

Description

The Delimited Measures File Reader is able to load files with simple numeric (int, long, float, double with the unit of measures) or textual data with or without timestamp. The algorithm reads each line of the file and splits the tokens through the separator (which is a tab, if not specified). Then, according to the LineFormat parameter, it will detect the data and the timestamp.

Allowed Input & Produced Output Data Types

Label
Supported data type(s)
Input none
Output org.jdpf.plugins.datatypes.basic.MeasureSeries

Works With

The Delimited Measures File Reader block works with any block accepting as input a org.jdpf.plugins.datatypes.basic.MeasureSeries. Thus it works with:

Dependencies

As the Delimited Measures File Reader has been developed with the JDPF core plugins, the only dependency is with the core plugin:

Date Format Java DateFormat

The following pattern letters are defined (all other characters from 'A' to 'Z' and from 'a' to 'z' are reserved):

Letter Date or Time Component Presentation Examples
G Era designator Text AD
y Year Year 1996; 96
M Month in year Month July; Jul; 07
w Week in year Number 27
W Week in month Number 2
D Day in year Number 189
d Day in month Number 10
F Day of week in month Number 2
E Day in week Text Tuesday; Tue
a Am/pm marker Text PM
H Hour in day (0-23) Number 0
k Hour in day (1-24) Number 24
K Hour in am/pm (0-11) Number 0
h Hour in am/pm (1-12) Number 12
m Minute in hour Number 30
s Second in minute Number 55
S Millisecond Number 978
z Time zone General time zone Pacific Standard Time; PST; GMT-08:00
Z Time zone RFC 822 time zone -0800

Some examples:

Date and Time Pattern Result
"yyyy.MM.dd G 'at' HH:mm:ss z" 2001.07.04 AD at 12:08:56 PDT
"EEE, MMM d, ''yy" Wed, Jul 4, '01
"h:mm a" 12:08 PM
"hh 'o''clock' a, zzzz" 12 o'clock PM, Pacific Daylight Time
"K:mm a, z" 0:08 PM, PDT
"yyyyy.MMMMM.dd GGG hh:mm aaa" 02001.July.04 AD 12:08 PM
"EEE, d MMM yyyy HH:mm:ss Z" Wed, 4 Jul 2001 12:08:56 -0700
"yyMMddHHmmssZ" 010704120856-0700

For more info click here.

Date Format Java Regular Expressions

The following are some examples of regular-expression constructs (for the complete list click here):

Construct Matches
Characters
x The character x
\\ The backslash character
\t The tab character ('\u0009')
Character classes
[abc] a, b, or c (simple class)
[^abc] Any character except a, b, or c (negation)
[a-zA-Z] a through z or A through Z, inclusive (range)
[a-d[m-p]] a through d, or m through p: [a-dm-p] (union)
[a-z&&[def]] d, e, or f (intersection)
[a-z&&[^bc]] a through z, except for b and c: [ad-z] (subtraction)
[a-z&&[^m-p]] a through z, and not m through p: [a-lq-z](subtraction)
Greedy quantifiers
X? X, once or not at all
X* X, zero or more times
X+ X, one or more times
X{n} X, exactly n times
X{n,} X, at least n times
X{n,m} X, at least n but not more than m times
Possessive quantifiers
X?+ X, once or not at all
X*+ X, zero or more times
X++ X, one or more times
X{n}+ X, exactly n times
X{n,}+ X, at least n times
X{n,m}+ X, at least n but not more than m times
Logical operators
XY X followed by Y
X|Y Either X or Y

Date Format Unit of Measures

To be completed...