extract data files
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 12455
libextractor 0.5.18a
libextractor is a library used to extract meta-data from files of arbitrary type. more>>
libextractor is a library that is used to extract meta-data from files of arbitrary type. It is designed to use helper-libraries to perform the actual extraction, and to be trivially extendable by linking against external extractors for additional file types. libextractor is part of the GNU project. Our official GNU website can be found at http://www.gnu.org/software/libextractor/. libextractor can be downloaded from this site or the GNU mirrors.
The goal is to provide developers of file-sharing networks or WWW-indexing bots with a universal library to obtain simple keywords to match against queries. libextractor contains a shell-command "extract" that, similar to the well-known "file" command, can extract meta-data from a file an print the results to stdout.
Currently, libextractor supports the following formats: HTML, PDF, PS, OLE2 (DOC, XLS, PPT), OpenOffice (sxw), StarOffice (sdw), DVI, MAN, MP3 (ID3v1 and ID3v2), OGG, WAV, JPEG, GIF, PNG, TIFF, DEB, RPM, TAR(.GZ), ZIP, ELF, REAL, RIFF (AVI), MPEG, QT and ASF.
Also, various additional MIME types are detected.
libextractor is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
Enhancements:
- This release fixes various build problems and a crash with recent versions of libgsf.
vAn incomplete manual was added.
<<lessThe goal is to provide developers of file-sharing networks or WWW-indexing bots with a universal library to obtain simple keywords to match against queries. libextractor contains a shell-command "extract" that, similar to the well-known "file" command, can extract meta-data from a file an print the results to stdout.
Currently, libextractor supports the following formats: HTML, PDF, PS, OLE2 (DOC, XLS, PPT), OpenOffice (sxw), StarOffice (sdw), DVI, MAN, MP3 (ID3v1 and ID3v2), OGG, WAV, JPEG, GIF, PNG, TIFF, DEB, RPM, TAR(.GZ), ZIP, ELF, REAL, RIFF (AVI), MPEG, QT and ASF.
Also, various additional MIME types are detected.
libextractor is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
Enhancements:
- This release fixes various build problems and a crash with recent versions of libgsf.
vAn incomplete manual was added.
Download (7.5MB)
Added: 2007-07-05 License: (FDL) GNU Free Documentation License Price:
842 downloads
Obscure-Extractor-GTK 0.2
Obscure-Extractor-GTK can extract data from simple and unusual archives as used by games. more>>
Obscure-Extractor-GTK can extract data from simple and unusual archives as used by games, e.g. Neverwinter Nights, Homeworld 2, BloodRayne.
Mostly a framework where I can easily add new modules when I want to have a look at the inner workings of games, though the Delphi version has some more advanced stuff like support for old InstallShield archives that would need to be ported.
<<lessMostly a framework where I can easily add new modules when I want to have a look at the inner workings of games, though the Delphi version has some more advanced stuff like support for old InstallShield archives that would need to be ported.
Download (0.012MB)
Added: 2006-07-24 License: GPL (GNU General Public License) Price:
1202 downloads
THC-ManipulateData 1.3
THC-ManipulateData can search data on a harddisk/partition/file. more>>
THC-ManipulateData can search data on a harddisk/partition/file, extract the part you are interested in, and write it back after you modified it.
Useful to find and modify really all unencrypted Logfiles on a system. Does everything in RAW mode, and hence does not tamper a/m/ctimes.
It comes with 4 tools:
Syntax of search_data: ./search_data [-i] [-d] blockdevice searchstring
-i - the only parameter which is optional. This does the
search case insensitive.
-d - dump the found occasions in hex
blockdevice - a blockdevice you want to search for data. It need
not to be a blockdevice, it can be anything, but normaly
you use it on these.
searchstring - a string you want to search for
The blockdevice is searched for the occurance of searchstring, which are printed with location when found.
Example: ./search_data -i /dev/hda3 "connect from 10.0.0.1"
Output looks like:
found at 234600: connect from 10.0.0.1/unresolved (UNKNOWN)
Syntax of read_data: ./read_data blockdevice start_address no_of_bytes
blockdevice - a blockdevice you want to get your data from. It need not to be a blockdevice, it can be anything, but normaly you use it on these.
start_address - from which offset of the blockdevice you want to extract data from
no_of_bytes - how many bytes of data starting at the start_address you want to extract in a file.
The output filename is always START_ADDRESS.NO_OF_BYTES
Example: ./read_data /dev/hda3 234653 1024
writes 1024 bytes of data from /dev/hda3 starting from offset 234653 to the file "234653.1024"
Syntax of write_data: ./write_data blockdevice filename
blockdevice - a blockdevice you want to write your data to. It need not to be a blockdevice, it can be anything, but normaly you use it on these.
filename - the data you want to write to the blockdevice. For error protection, the location where it is put it gathered from the filename - as you can see above from read_data. If you modified the data extracted with read_data into the file, it may not have a different size than defined in the filename! The data in filename is written to the blockdevice
Example: ./write_data /dev/hda3 234653.1024
writes 1024 bytes of data to /dev/hda3 starting at offset 234653 with the
data read from the file "234653.1024"
Syntax of replace_data: ./replace_data [-i] blockdevice searchstring replacestring
-i - the only parameter which is optional. This does the search case insensitive.
blockdevice - a blockdevice you want to search for data. It need not to be a blockdevice, it can be anything, but normaly you use it on these.
searchstring - a string you want to search for
replacestring - the string you want to replace the found entries with
The blockdevice is searched for the occurance of searchstring, and is then replaced.
Example: ./replace_data -i /dev/hda3 "connect from 1.0.0.1" "Remap table failure "
Output looks like:
found at 234600 - replaced
Enhancements:
- fixed a bug in read/write_data, seeks over 2gb now succeed
- added -d for hexdump display of occasions found in search_data
<<lessUseful to find and modify really all unencrypted Logfiles on a system. Does everything in RAW mode, and hence does not tamper a/m/ctimes.
It comes with 4 tools:
Syntax of search_data: ./search_data [-i] [-d] blockdevice searchstring
-i - the only parameter which is optional. This does the
search case insensitive.
-d - dump the found occasions in hex
blockdevice - a blockdevice you want to search for data. It need
not to be a blockdevice, it can be anything, but normaly
you use it on these.
searchstring - a string you want to search for
The blockdevice is searched for the occurance of searchstring, which are printed with location when found.
Example: ./search_data -i /dev/hda3 "connect from 10.0.0.1"
Output looks like:
found at 234600: connect from 10.0.0.1/unresolved (UNKNOWN)
Syntax of read_data: ./read_data blockdevice start_address no_of_bytes
blockdevice - a blockdevice you want to get your data from. It need not to be a blockdevice, it can be anything, but normaly you use it on these.
start_address - from which offset of the blockdevice you want to extract data from
no_of_bytes - how many bytes of data starting at the start_address you want to extract in a file.
The output filename is always START_ADDRESS.NO_OF_BYTES
Example: ./read_data /dev/hda3 234653 1024
writes 1024 bytes of data from /dev/hda3 starting from offset 234653 to the file "234653.1024"
Syntax of write_data: ./write_data blockdevice filename
blockdevice - a blockdevice you want to write your data to. It need not to be a blockdevice, it can be anything, but normaly you use it on these.
filename - the data you want to write to the blockdevice. For error protection, the location where it is put it gathered from the filename - as you can see above from read_data. If you modified the data extracted with read_data into the file, it may not have a different size than defined in the filename! The data in filename is written to the blockdevice
Example: ./write_data /dev/hda3 234653.1024
writes 1024 bytes of data to /dev/hda3 starting at offset 234653 with the
data read from the file "234653.1024"
Syntax of replace_data: ./replace_data [-i] blockdevice searchstring replacestring
-i - the only parameter which is optional. This does the search case insensitive.
blockdevice - a blockdevice you want to search for data. It need not to be a blockdevice, it can be anything, but normaly you use it on these.
searchstring - a string you want to search for
replacestring - the string you want to replace the found entries with
The blockdevice is searched for the occurance of searchstring, and is then replaced.
Example: ./replace_data -i /dev/hda3 "connect from 1.0.0.1" "Remap table failure "
Output looks like:
found at 234600 - replaced
Enhancements:
- fixed a bug in read/write_data, seeks over 2gb now succeed
- added -d for hexdump display of occasions found in search_data
Download (0.007MB)
Added: 2006-03-08 License: GPL (GNU General Public License) Price:
1325 downloads
MDF audio extracter 0.1
MDF audio extracter project is a tool to extract audio data from MDF/MDS audio cd images to wav or raw files. more>>
MDF audio extracter project is a tool to extract audio data from MDF/MDS audio cd images to wav or raw files. Tracks will be extracted to the current directory and named track_[num].wav or track_[num].raw. Output can also be redirected to stdout to allow the audio data to be fed to an encoder or player directly.
You need both a .mds and .mdf file to be able to extract tracks. The .mds file contains the information about the tracks, while the .mdf file contains the actual data. They usually should have the same name (except for the extension ofcourse). This is case sensitive, so for example FileName is not the same as filename.
Usage: mdfextract [options] file.mds
Options:
-i output mds info instead of extracting
-r extract raw track data
-s output to stdout instead of file
-t < num > extract single track (num > 0)
-q quiet, no output
Version restrictions:
- Probably does not work on big endian archs.
<<lessYou need both a .mds and .mdf file to be able to extract tracks. The .mds file contains the information about the tracks, while the .mdf file contains the actual data. They usually should have the same name (except for the extension ofcourse). This is case sensitive, so for example FileName is not the same as filename.
Usage: mdfextract [options] file.mds
Options:
-i output mds info instead of extracting
-r extract raw track data
-s output to stdout instead of file
-t < num > extract single track (num > 0)
-q quiet, no output
Version restrictions:
- Probably does not work on big endian archs.
Download (0.010MB)
Added: 2007-03-27 License: GPL (GNU General Public License) Price:
949 downloads
File::Data 1.12
File::Data is a Perl module as a interface to file data. more>>
File::Data is a Perl module as a interface to file data.
Wraps all the accessing of a file into a convenient set of calls for reading and writing data, including a simple regex interface.
Note that the file needs to exist prior to using this module!
See new()
SYNOPSIS
use strict;
use File::Data;
my $o_dat = File::Data->new(./t/example);
$o_dat->write("complete file contentsn");
$o_dat->prepend("first linen"); # line 0
$o_dat->append("original second (last) linen");
$o_dat->insert(2, "new second linen"); # inc. zero!
$o_dat->replace(line, LINE);
print $o_dat->READ;
Or, perhaps more seriously :-}
my $o_sgm = File::Data->new(./sgmlfile);
print "new SGML data: ".$o_sgm->REPLACE(
s*((?s).*)s* ,
qq| key="val" |,
) if $o_sgm;
See METHODS and EXAMPLES.
IMPORTANT
lowercase method calls return the object itself, so you can chain calls.
my $o_obj = $o_dat->read; # ! READ; # !<<less
Wraps all the accessing of a file into a convenient set of calls for reading and writing data, including a simple regex interface.
Note that the file needs to exist prior to using this module!
See new()
SYNOPSIS
use strict;
use File::Data;
my $o_dat = File::Data->new(./t/example);
$o_dat->write("complete file contentsn");
$o_dat->prepend("first linen"); # line 0
$o_dat->append("original second (last) linen");
$o_dat->insert(2, "new second linen"); # inc. zero!
$o_dat->replace(line, LINE);
print $o_dat->READ;
Or, perhaps more seriously :-}
my $o_sgm = File::Data->new(./sgmlfile);
print "new SGML data: ".$o_sgm->REPLACE(
s*((?s).*)s* ,
qq| key="val" |,
) if $o_sgm;
See METHODS and EXAMPLES.
IMPORTANT
lowercase method calls return the object itself, so you can chain calls.
my $o_obj = $o_dat->read; # ! READ; # !<<less
Download (0.013MB)
Added: 2007-04-26 License: Perl Artistic License Price:
914 downloads
Daizu::File 0.3
Daizu::File is a Perl class representing files in working copies. more>>
Daizu::File is a Perl class representing files in working copies.
Each object of this class represents a particular file in a Daizu CMS working copy (a record in the wc_file table).
METHODS
Note that all the functions which return the value of a Subversion property will strip leading and trailing whitespace, and treat a value which is empty or entirely whitespace as if it wasnt set at all.
Daizu::File->new($cms, $file_id)
Return a new Daizu::File object for the file with the specified ID number.
$file->data
Return a reference to a string containing the file data (content).
$file->wc
Return a Daizu::Wc object representing the working copy in which this file lives.
$file->guid_uri
Return the GUID URI for this file.
$file->directory_path
Returns the path of a directory, either the same as the file if its a directory itself, or the path of its parent directory, or if its at the top level.
$file->permalink
Returns the first URL generated by the file, which will be the URL you want to link to most of the time. For articles this will always be the normal HTML version of the article, even if there are also other URLs available for it, and it will always be the first page of multipage articles. For non-article files there is no guarantee about what this will return, but most will only generate a single URL anyway, and for those that dont generators are likely to return the most linkable URL first.
The URL returned is an absolute URL provided as a URI object.
Returns nothing if the file doesnt generate any URLs.
There are some cases where this might not be what you want. For example, the root directory of a website using Daizu::Gen will either not generate a URL at all, or will generate one for a Google sitemap XML file, neither of which is likely to be useful for linking. To get the URL of the website you would probably need to find a file called something like _index.html. On the other hand, the Daizu::Gen::Blog generator will give you a sensible URL for the blog homepage if you call this on its root directory.
$file->urls_in_db($method, $argument)
Return a list of the URLs (plain strings, each an absolute URI) of the file which have the specified method and argument values, drawing from the url table in the database.
$file->article_urls
Return information about the URLs which the file should have, if it is an article. Fails if it isnt.
<<lessEach object of this class represents a particular file in a Daizu CMS working copy (a record in the wc_file table).
METHODS
Note that all the functions which return the value of a Subversion property will strip leading and trailing whitespace, and treat a value which is empty or entirely whitespace as if it wasnt set at all.
Daizu::File->new($cms, $file_id)
Return a new Daizu::File object for the file with the specified ID number.
$file->data
Return a reference to a string containing the file data (content).
$file->wc
Return a Daizu::Wc object representing the working copy in which this file lives.
$file->guid_uri
Return the GUID URI for this file.
$file->directory_path
Returns the path of a directory, either the same as the file if its a directory itself, or the path of its parent directory, or if its at the top level.
$file->permalink
Returns the first URL generated by the file, which will be the URL you want to link to most of the time. For articles this will always be the normal HTML version of the article, even if there are also other URLs available for it, and it will always be the first page of multipage articles. For non-article files there is no guarantee about what this will return, but most will only generate a single URL anyway, and for those that dont generators are likely to return the most linkable URL first.
The URL returned is an absolute URL provided as a URI object.
Returns nothing if the file doesnt generate any URLs.
There are some cases where this might not be what you want. For example, the root directory of a website using Daizu::Gen will either not generate a URL at all, or will generate one for a Google sitemap XML file, neither of which is likely to be useful for linking. To get the URL of the website you would probably need to find a file called something like _index.html. On the other hand, the Daizu::Gen::Blog generator will give you a sensible URL for the blog homepage if you call this on its root directory.
$file->urls_in_db($method, $argument)
Return a list of the URLs (plain strings, each an absolute URI) of the file which have the specified method and argument values, drawing from the url table in the database.
$file->article_urls
Return information about the URLs which the file should have, if it is an article. Fails if it isnt.
Download (0.41MB)
Added: 2006-11-29 License: Perl Artistic License Price:
1059 downloads
Data::ICal 0.11
Data::ICal is a Perl module that generates iCalendar (RFC 2445) calendar files. more>>
Data::ICal is a Perl module that generates iCalendar (RFC 2445) calendar files.
SYNOPSIS
use Data::ICal;
my $calendar = Data::ICal->new();
my $vtodo = Data::ICal::Entry::Todo->new();
$vtodo->add_properties(
# ... see Data::ICal::Entry::Todo documentation
);
# ... or
$calendar = Data::ICal->new(filename => foo.ics); # parse existing file
$calendar = Data::ICal->new(data => BEGIN:VCALENDAR...); # parse existing file
$calendar->add_entry($vtodo);
print $calendar->as_string;
# Or, if youre printing to something you want google to read:
print $calendar->as_string(fold => 0);
A Data::ICal object represents a VCALENDAR object as defined in the iCalendar protocol (RFC 2445, MIME type "text/calendar"), as implemented in many popular calendaring programs such as Apples iCal.
Each Data::ICal object is a collection of "entries", which are objects of a subclass of Data::ICal::Entry. The types of entries defined by iCalendar (which refers to them as "components") include events, to-do items, journal entries, free/busy time indicators, and time zone descriptors; in addition, events and to-do items can contain alarm entries. (Currently, Data::ICal only implements to-do items and events.)
Data::ICal is a subclass of Data::ICal::Entry; see its manpage for more methods applicable to Data::ICal.
<<lessSYNOPSIS
use Data::ICal;
my $calendar = Data::ICal->new();
my $vtodo = Data::ICal::Entry::Todo->new();
$vtodo->add_properties(
# ... see Data::ICal::Entry::Todo documentation
);
# ... or
$calendar = Data::ICal->new(filename => foo.ics); # parse existing file
$calendar = Data::ICal->new(data => BEGIN:VCALENDAR...); # parse existing file
$calendar->add_entry($vtodo);
print $calendar->as_string;
# Or, if youre printing to something you want google to read:
print $calendar->as_string(fold => 0);
A Data::ICal object represents a VCALENDAR object as defined in the iCalendar protocol (RFC 2445, MIME type "text/calendar"), as implemented in many popular calendaring programs such as Apples iCal.
Each Data::ICal object is a collection of "entries", which are objects of a subclass of Data::ICal::Entry. The types of entries defined by iCalendar (which refers to them as "components") include events, to-do items, journal entries, free/busy time indicators, and time zone descriptors; in addition, events and to-do items can contain alarm entries. (Currently, Data::ICal only implements to-do items and events.)
Data::ICal is a subclass of Data::ICal::Entry; see its manpage for more methods applicable to Data::ICal.
Download (0.10MB)
Added: 2006-12-01 License: Perl Artistic License Price:
1059 downloads
Java EDF files viewer 2.0.1
Java EDF files viewer is a multi-platform EDF file viewer. more>>
Java EDF files viewer is a multiplatform (Linux and Windows) EDF (European Data Format) files viewer written in Java and developped with Borland JbuilderX Foundation.
Usage
1. You need the Java software installed.
2. To execute the viewer
- type in command line: java -jar jEDF.jar
Enhancements:
- This release has hypnogram scoring, montage creation, spectral analysis, EEG event scoring, and a bilingual interface (English/French).
<<lessUsage
1. You need the Java software installed.
2. To execute the viewer
- type in command line: java -jar jEDF.jar
Enhancements:
- This release has hypnogram scoring, montage creation, spectral analysis, EEG event scoring, and a bilingual interface (English/French).
Download (0.22MB)
Added: 2006-11-05 License: GPL (GNU General Public License) Price:
1128 downloads
Data::CTable 1.03
Data::CTable is a Perl module that helps you read, write, manipulate tabular data. more>>
Data::CTable is a Perl module that helps you read, write, manipulate tabular data.
SYNOPSIS
## Read some data files in various tabular formats
use Data::CTable;
my $People = Data::CTable->new("people.merge.mac.txt");
my $Stats = Data::CTable->new("stats.tabs.unix.txt");
## Clean stray whitespace in fields
$People->clean_ws();
$Stats ->clean_ws();
## Retrieve columns
my $First = $People->col(FirstName);
my $Last = $People->col(LastName );
## Calculate a new column based on two others
my $Full = [map {"$First->[$_] $Last->[$_]"} @{$People->all()}];
## Add new column to the table
$People->col(FullName => $Full);
## Another way to calculate a new column
$People->col(Key);
$People->calc(sub {no strict vars; $Key = "$Last,$First";});
## "Left join" records matching Stats:PersonID to People:Key
$Stats->join($People, PersonID => Key);
## Find certain records
$Stats->select_all();
$Stats->select(Department => sub {/Sale/i }); ## Sales depts
$Stats->omit (Department => sub {/Resale/i}); ## not Resales
$Stats->select(UsageIndex => sub {$_ > 20.0}); ## high usage
## Sort the found records
$Stats->sortspec(DeptNum , {SortType => Integer});
$Stats->sortspec(UsageIndex, {SortType => Number });
$Stats->sort([qw(DeptNum UsageIndex Last First)]);
## Make copy of table with only found/sorted data, in order
my $Report = $Stats->snapshot();
## Write an output file
$Report->write(_FileName => "Rept.txt", _LineEnding => "mac");
## Print a final progress message.
$Stats->progress("Done!");
## Dozens more methods and parameters available...
OVERVIEW
Data::CTable is a comprehensive utility for reading, writing, manipulating, cleaning and otherwise transforming tabular data. The distribution includes several illustrative subclasses and utility scripts.
A Columnar Table represents a table as a hash of data columns, making it easy to do data cleanup, formatting, searching, calculations, joins, or other complex operations.
The objects hash keys are the field names and the hash values hold the data columns (as array references).
Tables also store a "selection" -- a list of selected / sorted record numbers, and a "field list" -- an ordered list of all or some fields to be operated on. Select() and sort() methods manipulate the selection list. Later, you can optionally rewrite the table in memory or on disk to reflect changes in the selection list or field list.
Data::CTable reads and writes any tabular text file format including Merge, CSV, Tab-delimited, and variants. It transparently detects, reads, and preserves Unix, Mac, and/or DOS line endings and tab or comma field delimiters -- regardless of the runtime platform.
In addition to reading data files, CTable is a good way to gather, store, and operate on tabular data in memory, and to export data to delimited text files to be read by other programs or interactive productivity applications.
To achieve extremely fast data loading, CTable caches data file contents using the Storable module. This can be helpful in CGI environments or when operating on very large data files. CTable can read an entire cached table of about 120 megabytes into memory in about 10 seconds on an average mid-range computer.
For simple data-driven applications needing to store and quickly retrieve simple tabular data sets, CTable provides a credible alternative to DBM files or SQL.
For data hygiene applications, CTable forms the foundation for writing utility scripts or compilers to transfer data from external sources, such as FileMaker, Excel, Access, personal organizers, etc. into compiled or validated formats -- or even as a gateway to loading data into SQL databases or other destinations. You can easily write short, repeatable scripts in Perl to do reporting, error checking, analysis, or validation that would be hard to duplicate in less-flexible application environments.
The data representation is simple and open so you can directly access the data in the object if you feel like it -- or you can use accessors to request "clean" structures containing only the data or copies of it. Or you can build your own columns in memory and then when youre ready, turn them into a table object using the very flexible new() method.
The highly factored interface and implementation allow fine-grained subclassing so you can easily create useful lightweight subclasses. Several subclasses are included with the distribution.
Most defaults and parameters can be customized by subclassing, overridden at the instance level (avoiding the need to subclass too often), and further overridden via optional named-parameter arguments to most major method calls.
<<lessSYNOPSIS
## Read some data files in various tabular formats
use Data::CTable;
my $People = Data::CTable->new("people.merge.mac.txt");
my $Stats = Data::CTable->new("stats.tabs.unix.txt");
## Clean stray whitespace in fields
$People->clean_ws();
$Stats ->clean_ws();
## Retrieve columns
my $First = $People->col(FirstName);
my $Last = $People->col(LastName );
## Calculate a new column based on two others
my $Full = [map {"$First->[$_] $Last->[$_]"} @{$People->all()}];
## Add new column to the table
$People->col(FullName => $Full);
## Another way to calculate a new column
$People->col(Key);
$People->calc(sub {no strict vars; $Key = "$Last,$First";});
## "Left join" records matching Stats:PersonID to People:Key
$Stats->join($People, PersonID => Key);
## Find certain records
$Stats->select_all();
$Stats->select(Department => sub {/Sale/i }); ## Sales depts
$Stats->omit (Department => sub {/Resale/i}); ## not Resales
$Stats->select(UsageIndex => sub {$_ > 20.0}); ## high usage
## Sort the found records
$Stats->sortspec(DeptNum , {SortType => Integer});
$Stats->sortspec(UsageIndex, {SortType => Number });
$Stats->sort([qw(DeptNum UsageIndex Last First)]);
## Make copy of table with only found/sorted data, in order
my $Report = $Stats->snapshot();
## Write an output file
$Report->write(_FileName => "Rept.txt", _LineEnding => "mac");
## Print a final progress message.
$Stats->progress("Done!");
## Dozens more methods and parameters available...
OVERVIEW
Data::CTable is a comprehensive utility for reading, writing, manipulating, cleaning and otherwise transforming tabular data. The distribution includes several illustrative subclasses and utility scripts.
A Columnar Table represents a table as a hash of data columns, making it easy to do data cleanup, formatting, searching, calculations, joins, or other complex operations.
The objects hash keys are the field names and the hash values hold the data columns (as array references).
Tables also store a "selection" -- a list of selected / sorted record numbers, and a "field list" -- an ordered list of all or some fields to be operated on. Select() and sort() methods manipulate the selection list. Later, you can optionally rewrite the table in memory or on disk to reflect changes in the selection list or field list.
Data::CTable reads and writes any tabular text file format including Merge, CSV, Tab-delimited, and variants. It transparently detects, reads, and preserves Unix, Mac, and/or DOS line endings and tab or comma field delimiters -- regardless of the runtime platform.
In addition to reading data files, CTable is a good way to gather, store, and operate on tabular data in memory, and to export data to delimited text files to be read by other programs or interactive productivity applications.
To achieve extremely fast data loading, CTable caches data file contents using the Storable module. This can be helpful in CGI environments or when operating on very large data files. CTable can read an entire cached table of about 120 megabytes into memory in about 10 seconds on an average mid-range computer.
For simple data-driven applications needing to store and quickly retrieve simple tabular data sets, CTable provides a credible alternative to DBM files or SQL.
For data hygiene applications, CTable forms the foundation for writing utility scripts or compilers to transfer data from external sources, such as FileMaker, Excel, Access, personal organizers, etc. into compiled or validated formats -- or even as a gateway to loading data into SQL databases or other destinations. You can easily write short, repeatable scripts in Perl to do reporting, error checking, analysis, or validation that would be hard to duplicate in less-flexible application environments.
The data representation is simple and open so you can directly access the data in the object if you feel like it -- or you can use accessors to request "clean" structures containing only the data or copies of it. Or you can build your own columns in memory and then when youre ready, turn them into a table object using the very flexible new() method.
The highly factored interface and implementation allow fine-grained subclassing so you can easily create useful lightweight subclasses. Several subclasses are included with the distribution.
Most defaults and parameters can be customized by subclassing, overridden at the instance level (avoiding the need to subclass too often), and further overridden via optional named-parameter arguments to most major method calls.
Download (0.15MB)
Added: 2007-07-13 License: Perl Artistic License Price:
833 downloads
g3data 1.5.1
g3data is a program for extracting data from graphs. more>>
g3data is used for extracting data from graphs. In publications data is usually presented as graphs, while the actual data is often missing. The project makes the extracting process much easier. The commercially available alternative is called data thief.
Main features:
- Zoom windows for maximum accuracy
- Can handle logarithmic scales and non-ortogonal graphs
- Tabbed processing of multiple images consequetively
Enhancements:
- Added basic drag-n-drop support, current version only supports uri drops.
- Added preliminary basis for datapoint movement.
- Some of the graph properties are now hideable, to resolv issues on lower resolution screens.
<<lessMain features:
- Zoom windows for maximum accuracy
- Can handle logarithmic scales and non-ortogonal graphs
- Tabbed processing of multiple images consequetively
Enhancements:
- Added basic drag-n-drop support, current version only supports uri drops.
- Added preliminary basis for datapoint movement.
- Some of the graph properties are now hideable, to resolv issues on lower resolution screens.
Download (0.048MB)
Added: 2007-03-16 License: GPL (GNU General Public License) Price:
957 downloads
Audio File Library 0.2.6
Audio File Library is a uniform API for accessing standard digital audio file formats. more>>
The Audio File Library provides a uniform and elegant API for accessing a variety of audio file formats, such as AIFF/AIFF-C, WAVE, NeXT/Sun .snd/.au, Berkeley/IRCAM/CARL Sound File, Audio Visual Research, Amiga IFF/8SVX, and NIST SPHERE. Supported compression formats are currently G.711 mu-law and A-law and IMA and MS ADPCM.
Key goals of the Audio File Library are file format transparency and data format transparency. The same calls for opening a file, accessing and manipulating audio metadata (e.g. sample rate, sample format, textual information, MIDI parameters), and reading/writing sample data will work with any supported audio file format. Likewise, the format of the audio data presented to the application need not be tied to the format of the data contained in the file.
The Audio File Library distributed under the GNU Library General Public License.
<<lessKey goals of the Audio File Library are file format transparency and data format transparency. The same calls for opening a file, accessing and manipulating audio metadata (e.g. sample rate, sample format, textual information, MIDI parameters), and reading/writing sample data will work with any supported audio file format. Likewise, the format of the audio data presented to the application need not be tied to the format of the data contained in the file.
The Audio File Library distributed under the GNU Library General Public License.
Download (0.36MB)
Added: 2005-04-14 License: LGPL (GNU Lesser General Public License) Price:
1655 downloads
desktop-data-model 1.2.5
desktop-data-model is a GNOME wrapper library. more>> desktop-data-model 1.2.5 is a versatile software which functions as a GNOME wrapper library.
Installation: The simplest way to compile this package is:
- `cd to the directory containing the packages source code and type `./configure to configure the package for your system.
- Running `configure might take a while. While running, it prints some messages telling which features it is checking for.
- Type `make to compile the package.
- Optionally, type `make check to run any self-tests that come with the package.
- Type `make install to install the programs and any data files and
- documentation.
- You can remove the program binaries and object files from the source code directory by typing `make clean. To also remove the files that `configure created (so you can compile the package for a different kind of computer), type `make disclean. There is also a `make maintainer-clean target, but that is intended mainly for the packages developers. If you use it, you may have to get all sorts of other programs in order to regenerate files that came with the distribution.
Added: 2008-10-29 License: LGPL Price: FREE
16 downloads
Data::Locations 5.4
Data::Locations is a virtual file manager which allows to read/write data to and from virtual files. more>>
Data::Locations - magic insertion points in your data
Did you already encounter the problem that you had to produce some data in a particular order, but that some piece of the data was still unavailable at the point in the sequence where it belonged and where it should have been produced?
Did you also have to resort to cumbersome and tedious measures such as storing the first and the last part of your data separately, then producing the missing middle part, and finally putting it all together?
In this simple case, involving only one deferred insertion, you might still put up with this solution.
But if there is more than one deferred insertion, requiring the handling of many fragments of data, you will probably get annoyed and frustrated.
You might even have to struggle with limitations of the file system of your operating system, or handling so many files might considerably slow down your application due to excessive file input/output.
And if you dont know exactly beforehand how many deferred insertions there will be (if this depends dynamically on the data being processed), and/or if the pieces of data you need to insert need additional (nested) insertions themselves, things will get really tricky, messy and troublesome.
In such a case you might wonder if there wasnt an elegant solution to this problem.
This is where the "Data::Locations" module comes in: It handles such insertion points automatically for you, no matter how many and how deeply nested, purely in memory, requiring no (inherently slower) file input/output operations.
(The underlying operating system will automatically take care if the amount of data becomes too large to be handled fully in memory, though, by swapping out unneeded parts.)
Moreover, it also allows you to insert the same fragment of data into SEVERAL different places.
This increases space efficiency because the same data is stored in memory only once, but used multiple times.
Potential infinite recursion loops are detected automatically and refused.
In order to better understand the underlying concept, think of "Data::Locations" as virtual files with almost random access: You can write data to them, you can say "reserve some space here which I will fill in later", and continue writing data.
And you can of course also read from these virtual files, at any time, in order to see the data that a given virtual file currently contains.
When you are finished filling in all the different parts of your virtual file, you can write out its contents in flattened form to a physical, real file this time, or process it otherwise (purely in memory, if you wish).
You can also think of "Data::Locations" as bubbles and bubbles inside of other bubbles. You can inflate these bubbles in any arbitrary order you like through a straw (i.e., the bubbles object reference).
Note that this module handles your data completely transparently, which means that you can use it equally well for text AND binary data.
You might also be interested in knowing that this module and its concept have already been heavily used in the automatic code generation of large software projects.
Enhancements:
- Fixed test file "02___refcount.t" to auto-adjust the offset dealing with self-ties not incrementing
- the refcount in some Perl versions.
- Added a warning to "Makefile.PL" that Perl versions including and between v5.6.1 and v5.7.0 are not fully supported (test file "11_______dump.t" dumps core).
<<lessDid you already encounter the problem that you had to produce some data in a particular order, but that some piece of the data was still unavailable at the point in the sequence where it belonged and where it should have been produced?
Did you also have to resort to cumbersome and tedious measures such as storing the first and the last part of your data separately, then producing the missing middle part, and finally putting it all together?
In this simple case, involving only one deferred insertion, you might still put up with this solution.
But if there is more than one deferred insertion, requiring the handling of many fragments of data, you will probably get annoyed and frustrated.
You might even have to struggle with limitations of the file system of your operating system, or handling so many files might considerably slow down your application due to excessive file input/output.
And if you dont know exactly beforehand how many deferred insertions there will be (if this depends dynamically on the data being processed), and/or if the pieces of data you need to insert need additional (nested) insertions themselves, things will get really tricky, messy and troublesome.
In such a case you might wonder if there wasnt an elegant solution to this problem.
This is where the "Data::Locations" module comes in: It handles such insertion points automatically for you, no matter how many and how deeply nested, purely in memory, requiring no (inherently slower) file input/output operations.
(The underlying operating system will automatically take care if the amount of data becomes too large to be handled fully in memory, though, by swapping out unneeded parts.)
Moreover, it also allows you to insert the same fragment of data into SEVERAL different places.
This increases space efficiency because the same data is stored in memory only once, but used multiple times.
Potential infinite recursion loops are detected automatically and refused.
In order to better understand the underlying concept, think of "Data::Locations" as virtual files with almost random access: You can write data to them, you can say "reserve some space here which I will fill in later", and continue writing data.
And you can of course also read from these virtual files, at any time, in order to see the data that a given virtual file currently contains.
When you are finished filling in all the different parts of your virtual file, you can write out its contents in flattened form to a physical, real file this time, or process it otherwise (purely in memory, if you wish).
You can also think of "Data::Locations" as bubbles and bubbles inside of other bubbles. You can inflate these bubbles in any arbitrary order you like through a straw (i.e., the bubbles object reference).
Note that this module handles your data completely transparently, which means that you can use it equally well for text AND binary data.
You might also be interested in knowing that this module and its concept have already been heavily used in the automatic code generation of large software projects.
Enhancements:
- Fixed test file "02___refcount.t" to auto-adjust the offset dealing with self-ties not incrementing
- the refcount in some Perl versions.
- Added a warning to "Makefile.PL" that Perl versions including and between v5.6.1 and v5.7.0 are not fully supported (test file "11_______dump.t" dumps core).
Download (0.043MB)
Added: 2005-04-29 License: Artistic License Price:
1638 downloads
MP3::Tag::ParseData 0.9709
MP3::Tag::ParseData is a Perl module for parsing arbitrary data associated with music files. more>>
MP3::Tag::ParseData is a Perl module for parsing arbitrary data associated with music files.
SYNOPSIS
# parses the file name according to one of the patterns:
$mp3->config(parse_data, [i, %f, %t - %n - %a.%e, %t - %y.%e]);
$title = $mp3->title;
<<lessSYNOPSIS
# parses the file name according to one of the patterns:
$mp3->config(parse_data, [i, %f, %t - %n - %a.%e, %t - %y.%e]);
$title = $mp3->title;
Download (0.17MB)
Added: 2007-07-19 License: Perl Artistic License Price:
827 downloads
Bio::NEXUS::DataBlock 0.67
Bio::NEXUS::DataBlock is a Perl module that represents the deprecated DATA Block in NEXUS file. more>>
Bio::NEXUS::DataBlock is a Perl module that represents the deprecated DATA Block in NEXUS file.
SYNOPSIS
$block_object = new Bio::NEXUS::DataBlock($type, $block, $verbose, $taxlabels_ref);
The DataBlock class represents the deprecated Data Block in a NEXUS file. Data Blocks are still used by some prominent programs, unfortunately, although they are essentially the same as a Characters Block and a Taxa Block combined. Data Blocks may be used as input, but are not output by the NEXPL library. For more information on Data Blocks, see the Characters Block documentation.
METHODS
new
Title : new
Usage : block_object = new Bio::NEXUS::CharactersBlock($block_type, $block, $verbose, $taxa);
Function: Creates a new Bio::NEXUS::CharactersBlock object
Returns : Bio::NEXUS::CharactersBlock object
Args : verbose flag (0 or 1), type (string) and the block to parse (string)
<<lessSYNOPSIS
$block_object = new Bio::NEXUS::DataBlock($type, $block, $verbose, $taxlabels_ref);
The DataBlock class represents the deprecated Data Block in a NEXUS file. Data Blocks are still used by some prominent programs, unfortunately, although they are essentially the same as a Characters Block and a Taxa Block combined. Data Blocks may be used as input, but are not output by the NEXPL library. For more information on Data Blocks, see the Characters Block documentation.
METHODS
new
Title : new
Usage : block_object = new Bio::NEXUS::CharactersBlock($block_type, $block, $verbose, $taxa);
Function: Creates a new Bio::NEXUS::CharactersBlock object
Returns : Bio::NEXUS::CharactersBlock object
Args : verbose flag (0 or 1), type (string) and the block to parse (string)
Download (0.15MB)
Added: 2006-12-20 License: Perl Artistic License Price:
1038 downloads
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above extract data files search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed