read and write
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 6525
Classfile Reader & Writer
Classfile Reader & Writer is a package for reading and writing Java .class files. more>>
This package makes it easy to read and write java classfiles. It doesnt, however, provide any help with displaying the contents of a classfile to the user (unless you count debug output), or disassembling the bytecodes.
This code snippet will read in a classfile and write it back out to a different file.
InputStream is = new FileInputStream("Foo.class");
OutputStream os = new FileOutputStream("FooCopy.class");
ClassInfo classInfo = new ClassInfo();
new ClassFileReader().read(is, classInfo);
classInfo.setName("FooCopy"); // Java requires the class name to match the file name
new ClassFileWriter().write(classInfo, os);
is.close();os.close();
The package can read "obfuscated" classfiles, like those generated by Crema, but it cant write them. Obfuscated classfiles have invalid data in them and the only reason they work is because most VMs ignore the data thats invalid (attributes like SourceFile, LineNumberTable, and LocalVariableTable). If a ClassFileReader encounters invalid data, it just ignores it.
<<lessThis code snippet will read in a classfile and write it back out to a different file.
InputStream is = new FileInputStream("Foo.class");
OutputStream os = new FileOutputStream("FooCopy.class");
ClassInfo classInfo = new ClassInfo();
new ClassFileReader().read(is, classInfo);
classInfo.setName("FooCopy"); // Java requires the class name to match the file name
new ClassFileWriter().write(classInfo, os);
is.close();os.close();
The package can read "obfuscated" classfiles, like those generated by Crema, but it cant write them. Obfuscated classfiles have invalid data in them and the only reason they work is because most VMs ignore the data thats invalid (attributes like SourceFile, LineNumberTable, and LocalVariableTable). If a ClassFileReader encounters invalid data, it just ignores it.
Download (0.056MB)
Added: 2005-04-22 License: Public Domain Price:
1651 downloads
bandwidth 0.13
bandwidth project is an artificial benchmark for measuring memory bandwidth, useful for identifying a computers weak areas. more>>
bandwidth project is an artificial benchmark for measuring memory bandwidth, useful for identifying a computers weak areas.
It tests several types of memory:
- Main memory read accesses
- Main memory write accesses
- Level 2 cache read accesses
- Level 2 cache write accesses
- Framebuffer read accesses
- Framebuffer write accesses
- String library routines
Enhancements:
- 64-bit support has been added.
<<lessIt tests several types of memory:
- Main memory read accesses
- Main memory write accesses
- Level 2 cache read accesses
- Level 2 cache write accesses
- Framebuffer read accesses
- Framebuffer write accesses
- String library routines
Enhancements:
- 64-bit support has been added.
Download (0.009MB)
Added: 2007-08-22 License: GPL (GNU General Public License) Price:
1112 downloads
LibMSWrite 0.9
LibMSWrite is a free, platform-independent C++ filter library that can read and write the Microsoft Write 3.0/3.1 document. more>>
LibMSWrite is a free, platform-independent C++ filter library that can read and write the Microsoft Write 3.0/3.1 document format. LibMSWrite library supports what is believed to be the complete featureset of the Write file format.
It is fully portable across 32-bit and 64-bit architectures and has no dependencies other than C++. Both Linux, Windows and any other system that supports C++ is supported (STL is not required).
It employs XML-based code generation techniques to simplify the process of manipulating binary Write data structures, in a portable manner.
What can LibMSWrite do for me?
LibMSWrite provides a comprehensive API that serves as a significant abstraction layer for the Microsoft Write file format. Its primary use is in the "backend" of Write Import and Export filters for office suites. LibMSWrite simplifies the creation of such filters because developers no longer need to know the innards of the Write file format.
LibMSWrite forms the basis of the Write filters for KWord >= 1. (http://www.koffice.org), the word processor that complements the K Desktop Environment (http://www.kde.org), which is the most popular free GUI for Unix-based systems (e.g. Linux, FreeBSD).
The LibMSWrite Project does not just provide a library. It also includes:
- mswrite2html: program which converts Write files to XHTML
- list.h: alternative linked list implementation to STL
- xmlparser.cpp: quick & dirty XML parser
- wmf.cpp: WMF parser and BMP-to-WMF converter
Microsoft Write ?
Microsoft Write was the word processor included in Microsoft Windows 3.x (now more than a decade old). With the notable exception of tables, it supported all of the features needed for writing simple documents (essays, book reviews, reports etc.). The Microsoft Write format is almost completely unrelated to the, now (2003) de-facto, Microsoft Word format.
Microsoft Write files usually have the extension .WRI. Although, there are some .WRI files that are actually RTFs.
LibMSWrite was written because there was a need to guarantee that Write documents could continue to be read in the face of diminishing compatibility for old, binary document file formats. For instance, this is important if you have 7 years worth of work in the format...
The LibMSWrite project is not endorsed by Microsoft.
<<lessIt is fully portable across 32-bit and 64-bit architectures and has no dependencies other than C++. Both Linux, Windows and any other system that supports C++ is supported (STL is not required).
It employs XML-based code generation techniques to simplify the process of manipulating binary Write data structures, in a portable manner.
What can LibMSWrite do for me?
LibMSWrite provides a comprehensive API that serves as a significant abstraction layer for the Microsoft Write file format. Its primary use is in the "backend" of Write Import and Export filters for office suites. LibMSWrite simplifies the creation of such filters because developers no longer need to know the innards of the Write file format.
LibMSWrite forms the basis of the Write filters for KWord >= 1. (http://www.koffice.org), the word processor that complements the K Desktop Environment (http://www.kde.org), which is the most popular free GUI for Unix-based systems (e.g. Linux, FreeBSD).
The LibMSWrite Project does not just provide a library. It also includes:
- mswrite2html: program which converts Write files to XHTML
- list.h: alternative linked list implementation to STL
- xmlparser.cpp: quick & dirty XML parser
- wmf.cpp: WMF parser and BMP-to-WMF converter
Microsoft Write ?
Microsoft Write was the word processor included in Microsoft Windows 3.x (now more than a decade old). With the notable exception of tables, it supported all of the features needed for writing simple documents (essays, book reviews, reports etc.). The Microsoft Write format is almost completely unrelated to the, now (2003) de-facto, Microsoft Word format.
Microsoft Write files usually have the extension .WRI. Although, there are some .WRI files that are actually RTFs.
LibMSWrite was written because there was a need to guarantee that Write documents could continue to be read in the face of diminishing compatibility for old, binary document file formats. For instance, this is important if you have 7 years worth of work in the format...
The LibMSWrite project is not endorsed by Microsoft.
Download (0.074MB)
Added: 2006-03-30 License: BSD License Price:
1303 downloads
lispreader 0.5
lispreader is a small library for reading expressions in Lisp syntax. more>>
lispreader is a small library for reading expressions in Lisp syntax. It has originally been written to facilitate simple exchange of structured data between processes but its main purpose is now to provide a framework for reading configuration files.
To simplify interpretation of the data read, lispreader also provides functions for simple matching of expressions against patterns.
lispreader is also used in at least one application to read and write data files. Lisp syntax is very suitable for doing this, especially if the data is organized hierachically.
Version restrictions:
lispreader is not a Lisp system in that it cannot, by itself, interpret Lisp expressions. It only provides a subset of the features of libraries like Guile of librep (namely the reading of expressions) and does thus not compete directly with those.
If all you need is a simple way to read Lisp expressions without interpreting them with Lisp semantics, you will probably be satisfied with lispreader.
Enhancements:
- #?(number) pattern
- lisp_free can handly arbitrarily nested lists without recursion.
- Memory allocation can now be controlled with the allocator interface.
- An allocator is included which is very fast and low-overhead, but only allows freeing all data at once.
- A new memory mapping Lisp stream type is implemented, which about doubles parsing speed.
<<lessTo simplify interpretation of the data read, lispreader also provides functions for simple matching of expressions against patterns.
lispreader is also used in at least one application to read and write data files. Lisp syntax is very suitable for doing this, especially if the data is organized hierachically.
Version restrictions:
lispreader is not a Lisp system in that it cannot, by itself, interpret Lisp expressions. It only provides a subset of the features of libraries like Guile of librep (namely the reading of expressions) and does thus not compete directly with those.
If all you need is a simple way to read Lisp expressions without interpreting them with Lisp semantics, you will probably be satisfied with lispreader.
Enhancements:
- #?(number) pattern
- lisp_free can handly arbitrarily nested lists without recursion.
- Memory allocation can now be controlled with the allocator interface.
- An allocator is included which is very fast and low-overhead, but only allows freeing all data at once.
- A new memory mapping Lisp stream type is implemented, which about doubles parsing speed.
Download (0.035MB)
Added: 2005-10-04 License: GPL (GNU General Public License) Price:
1480 downloads
Gedam 1.0
Gedam is a GNOME crossword puzzle program. more>>
Gedam is a GNOME program I wrote for doing crossword puzzles.
Gedam game is similar to the AcrossLite program for Windows, and it can read and write the file format of that program. Consequently, it works well for doing puzzles from The New York Times.
Although there is an existing version of AcrossLite for Linux, it has several glaring problems: poor support, the use of Motif, and the lack of a clock.
<<lessGedam game is similar to the AcrossLite program for Windows, and it can read and write the file format of that program. Consequently, it works well for doing puzzles from The New York Times.
Although there is an existing version of AcrossLite for Linux, it has several glaring problems: poor support, the use of Motif, and the lack of a clock.
Download (0.012MB)
Added: 2005-12-20 License: BSD License Price:
1403 downloads
Sound Converter 0.9.7
Sound Converter can convert sound files to other formats. more>>
Sound Converter project can convert sound files to other formats.
A simple sound converter application for the GNOME environment. It reads anything the GStreamer library can read, and writes WAV, FLAC, MP3, and Ogg Vorbis files.
<<lessA simple sound converter application for the GNOME environment. It reads anything the GStreamer library can read, and writes WAV, FLAC, MP3, and Ogg Vorbis files.
Download (0.036MB)
Added: 2007-08-01 License: GPL v3 Price:
538 downloads
Sprite 3.21
Sprite is a Perl module to manipulate text delimited databases using SQL. more>>
Sprite is a Perl module to manipulate text delimited databases using SQL.
SYNOPSIS
use Sprite;
$rdb = new Sprite;
$rdb->set_delimiter (-Read => ::) ## OR: (Read, ::);
$rdb->set_delimiter (-Write => ::) ## OR: (Write, ::);
$rdb->set_os (Win95);
## Valid arguments (case insensitive) include:
##
## Unix, Win95, Windows95, MSDOS, NT, WinNT, OS2, VMS,
## MacOS or Macintosh. Default determined by $^O.
$rdb->set_lock_file (c:win95tmpSprite.lck, 10);
$rdb->set_db_dir (Mac OS:Perl 5:Data) || die "Cant access dir!n";
$data = $rdb->sql (<<less
SYNOPSIS
use Sprite;
$rdb = new Sprite;
$rdb->set_delimiter (-Read => ::) ## OR: (Read, ::);
$rdb->set_delimiter (-Write => ::) ## OR: (Write, ::);
$rdb->set_os (Win95);
## Valid arguments (case insensitive) include:
##
## Unix, Win95, Windows95, MSDOS, NT, WinNT, OS2, VMS,
## MacOS or Macintosh. Default determined by $^O.
$rdb->set_lock_file (c:win95tmpSprite.lck, 10);
$rdb->set_db_dir (Mac OS:Perl 5:Data) || die "Cant access dir!n";
$data = $rdb->sql (<<less
Download (0.014MB)
Added: 2007-05-16 License: Perl Artistic License Price:
900 downloads
Fortran::Format 0.90
Fortran::Format is a Perl module to read and write data according to a standard Fortran 77 FORMAT. more>>
Fortran::Format is a Perl module to read and write data according to a standard Fortran 77 FORMAT.
SYNOPSYS
use Fortran::Format;
my $f = Fortran::Format->new("2(N: ,I4,2X)");
print $f->write(1 .. 10);
# prints the following:
# N: 1 N: 2
# N: 3 N: 4
# N: 5 N: 6
# N: 7 N: 8
# N: 9 N: 10
# if you dont want to save the format object,
# just chain the calls:
Fortran::Format->new("2(N: ,I4,2X)")->write(1 .. 10);
This is a Perl implementation of the Fortran 77 formatted input/output facility. One possible use is for producing input files for old Fortran programs, making sure that their column-oriented records are rigorously correct. Fortran formats may also have some advantages over printf in some cases: it is very easy to output an array, reusing the format as needed; and the syntax for repeated columns is more concise. Unlike printf, for good or ill, Fortran-formatted fields never exceed their desired width. For example, compare
printf "%3d", 12345; # prints "12345"
print Fortran::Format->new("I3")->write(12345); # prints "***"
This implementation was written in pure Perl, with portability and correctness in mind. It implements the full ANSI standard for Fortran 77 Formats (or at least it should). It was not written with speed in mind, so if you need to process millions of records it may not be what you need.
<<lessSYNOPSYS
use Fortran::Format;
my $f = Fortran::Format->new("2(N: ,I4,2X)");
print $f->write(1 .. 10);
# prints the following:
# N: 1 N: 2
# N: 3 N: 4
# N: 5 N: 6
# N: 7 N: 8
# N: 9 N: 10
# if you dont want to save the format object,
# just chain the calls:
Fortran::Format->new("2(N: ,I4,2X)")->write(1 .. 10);
This is a Perl implementation of the Fortran 77 formatted input/output facility. One possible use is for producing input files for old Fortran programs, making sure that their column-oriented records are rigorously correct. Fortran formats may also have some advantages over printf in some cases: it is very easy to output an array, reusing the format as needed; and the syntax for repeated columns is more concise. Unlike printf, for good or ill, Fortran-formatted fields never exceed their desired width. For example, compare
printf "%3d", 12345; # prints "12345"
print Fortran::Format->new("I3")->write(12345); # prints "***"
This implementation was written in pure Perl, with portability and correctness in mind. It implements the full ANSI standard for Fortran 77 Formats (or at least it should). It was not written with speed in mind, so if you need to process millions of records it may not be what you need.
Download (0.018MB)
Added: 2007-04-20 License: Perl Artistic License Price:
925 downloads
databeans 1.0
databeans is a fully object oriented (not relational) persistence framework for Java. more>>
databeans is a fully object oriented (not relational) persistence framework for Java, based on the use of the JavaBeans accessor methods to read and write data on disk instead of in the classes instance fields.
Main features:
- based on the use of the javabeans accessor methods to read/write data on disk in place of in the classes instance fields
- distributed (through RMI)
- transactional (with the 4 ANSI isolation levels supported)
- garbage collected (backed by an on-disk heap "heapspace")
- with persistent versions of the Collection classes
Installation:
Extract the archive into any appropriate directory on your hard drive. It will create a "databeans" directory with the following contents:
build.xml
api
[api documentation as generated by javadoc]
bin
databeans_admin
databeans_admin.bat
databeans_export
databeans_export.bat
databeans_import
databeans_import.bat
export.bsh
import.bsh
mkheapspace
mkheapspace.bat
mkheapspace.bsh
docs
getting_started.txt
gpl.txt
lib
databeans_admin.jar
databeans_client.jar
databeans.jar
security
databeans.policy
sample
client
build.xml
Department.java
Employee.java
policy
Sample.java
server
build.xml
DepartmentImpl.java
Department.java
EmployeeImpl.java
Employee.java
policy
src
[java source files]
The most interesting part for now is the file getting_started.txt located in the docs/ directory. It will guide you through running a sample application (which is located in the sample/ directory). That done, go on and read the manual (below) for a complete view of the products features.
<<lessMain features:
- based on the use of the javabeans accessor methods to read/write data on disk in place of in the classes instance fields
- distributed (through RMI)
- transactional (with the 4 ANSI isolation levels supported)
- garbage collected (backed by an on-disk heap "heapspace")
- with persistent versions of the Collection classes
Installation:
Extract the archive into any appropriate directory on your hard drive. It will create a "databeans" directory with the following contents:
build.xml
api
[api documentation as generated by javadoc]
bin
databeans_admin
databeans_admin.bat
databeans_export
databeans_export.bat
databeans_import
databeans_import.bat
export.bsh
import.bsh
mkheapspace
mkheapspace.bat
mkheapspace.bsh
docs
getting_started.txt
gpl.txt
lib
databeans_admin.jar
databeans_client.jar
databeans.jar
security
databeans.policy
sample
client
build.xml
Department.java
Employee.java
policy
Sample.java
server
build.xml
DepartmentImpl.java
Department.java
EmployeeImpl.java
Employee.java
policy
src
[java source files]
The most interesting part for now is the file getting_started.txt located in the docs/ directory. It will guide you through running a sample application (which is located in the sample/ directory). That done, go on and read the manual (below) for a complete view of the products features.
Download (0.64MB)
Added: 2006-07-06 License: GPL (GNU General Public License) Price:
1205 downloads
Dappad notebook sidebar 1.0
Dappad notebook sidebar is an extension that lets you write and read notes in the Firefox sidebar. more>>
Dappad notebook sidebar is an extension that lets you write and read notes in the Firefox sidebar.
You have both public and private notes in one place. Your public notes can be shared with friends.
Notes are written in rich format, you can copy and paste content from web pages, Word documents and Excel spreadsheets.
Your notes are saved in folders, and can be tagged for quick browsing.
<<lessYou have both public and private notes in one place. Your public notes can be shared with friends.
Notes are written in rich format, you can copy and paste content from web pages, Word documents and Excel spreadsheets.
Your notes are saved in folders, and can be tagged for quick browsing.
Download (0.11MB)
Added: 2007-05-07 License: MPL (Mozilla Public License) Price:
900 downloads
FUR filesystem 0.4.3
FUR is a application that let the user mount a Windows CE based device on your Linux file system. more>>
FUR is a application that let the user mount a Windows CE based device on your Linux file system: it uses the brilliant FUSE (acronym of File system in UserSpacE of Miklos Szeredi) and the great librapi2 of the Synce Project, a unix implementation of the RAPI protocol (that your device use to communicate with your other operating $ystem ) which you can find here, along with other very nice tools.
You execute it with proper arguments, then (if everything goes fine) the entire file system of your (previously connected) handheld will appear automagically mounted like a regular Linux file system where you will be able to copy, move read and write data with your favorite programs.
FUR filesystem means FUSE use libRAPI.
What dose not?
- Not very stable, particulary if used concurrently by different processes (but should be usable).
- Not well tested.
- The source is horrible(Tm).
- The implementation is more involved than it should.
- Lack documentation.
- Not even remotely optimized.
- Configuration tools deficient.
- Random access I/O is anti-optimized.
- Write is bugged (maybe a problem with concurrent file access).
- The resource locking system (e.g. to prevent different processes to write on the same file) is only roughly implemented (theres a lot to be done).
- Total absence of a caching system of some sort (which i hope to implement, sooner or later).
- Some errors are to obscure (and maybe not well implemented).
- Some attributes (e.g. ctime) are not implemented (the needed function in the librapi2 library is not yet implemented).
- No UID/GID check: this is not a security issue: only the user that invoke the dccm demon can access the filesystem, but other users should be able to see some kind of error message (which i will implement soon).
- Lot of other things i have forgot now.
- The log reporting suck
<<lessYou execute it with proper arguments, then (if everything goes fine) the entire file system of your (previously connected) handheld will appear automagically mounted like a regular Linux file system where you will be able to copy, move read and write data with your favorite programs.
FUR filesystem means FUSE use libRAPI.
What dose not?
- Not very stable, particulary if used concurrently by different processes (but should be usable).
- Not well tested.
- The source is horrible(Tm).
- The implementation is more involved than it should.
- Lack documentation.
- Not even remotely optimized.
- Configuration tools deficient.
- Random access I/O is anti-optimized.
- Write is bugged (maybe a problem with concurrent file access).
- The resource locking system (e.g. to prevent different processes to write on the same file) is only roughly implemented (theres a lot to be done).
- Total absence of a caching system of some sort (which i hope to implement, sooner or later).
- Some errors are to obscure (and maybe not well implemented).
- Some attributes (e.g. ctime) are not implemented (the needed function in the librapi2 library is not yet implemented).
- No UID/GID check: this is not a security issue: only the user that invoke the dccm demon can access the filesystem, but other users should be able to see some kind of error message (which i will implement soon).
- Lot of other things i have forgot now.
- The log reporting suck
Download (0.054MB)
Added: 2007-08-19 License: GPL (GNU General Public License) Price:
798 downloads
LDAP for Haskell 0.6.1
LDAP for Haskell package contains a LDAP binding for Haskell. more>>
LDAP for Haskell package contains a LDAP binding for Haskell. This package provides read and write support for LDAP directories.
Haskell is a standardized purely functional programming language with non-strict semantics, named after the logician Haskell Curry. It is one of the more popular functional languages, and the lazy functional language on which the most research is being performed.
Characteristic features of Haskell include pattern matching, currying, list comprehensions, guards, definable operators, and single assignment. The language also supports recursive functions and algebraic data types, as well as lazy evaluation. Unique concepts include monads, and type classes. The combination of such features can make functions which would be difficult to write in a procedural programming language almost trivial to implement in Haskell.
Several variants have been developed: parallelizable versions from MIT and Glasgow, both called Parallel Haskell; more parallel and distributed versions called Distributed Haskell (formerly Goffin) and Eden; a speculatively evaluating version called Eager Haskell and several object oriented versions: Haskell++, OHaskell and Mondrian.
There is also a Haskell-like language that offers a new method of support for GUI development called Concurrent Clean. Its biggest deviations from Haskell are use of uniqueness types for input instead of monads.
<<lessHaskell is a standardized purely functional programming language with non-strict semantics, named after the logician Haskell Curry. It is one of the more popular functional languages, and the lazy functional language on which the most research is being performed.
Characteristic features of Haskell include pattern matching, currying, list comprehensions, guards, definable operators, and single assignment. The language also supports recursive functions and algebraic data types, as well as lazy evaluation. Unique concepts include monads, and type classes. The combination of such features can make functions which would be difficult to write in a procedural programming language almost trivial to implement in Haskell.
Several variants have been developed: parallelizable versions from MIT and Glasgow, both called Parallel Haskell; more parallel and distributed versions called Distributed Haskell (formerly Goffin) and Eden; a speculatively evaluating version called Eager Haskell and several object oriented versions: Haskell++, OHaskell and Mondrian.
There is also a Haskell-like language that offers a new method of support for GUI development called Concurrent Clean. Its biggest deviations from Haskell are use of uniqueness types for input instead of monads.
Download (0.017MB)
Added: 2007-03-09 License: LGPL (GNU Lesser General Public License) Price:
959 downloads
Archive::Zip 1.20
Archive::Zip is a Perl module which provides an interface to ZIP archive files. more>>
Archive::Zip is a Perl module which provides an interface to ZIP archive files.
SYNOPSIS
# Create a Zip file
use Archive::Zip qw( :ERROR_CODES :CONSTANTS );
my $zip = Archive::Zip->new();
# Add a directory
my $dir_member = $zip->addDirectory( dirname/ );
# Add a file from a string with compression
my $string_member = $zip->addString( This is a test, stringMember.txt );
$string_member->desiredCompressionMethod( COMPRESSION_DEFLATED );
# Add a file from disk
my $file_member = $zip->addFile( xyz.pl, AnotherName.pl );
# Save the Zip file
unless ( $zip->writeToFileNamed(someZip.zip) == AZ_OK ) {
die write error;
}
# Read a Zip file
my $somezip = Archive::Zip->new();
unless ( $somezip->read( someZip.zip ) == AZ_OK ) {
die read error;
}
# Change the compression type for a file in the Zip
my $member = $somezip->memberNamed( stringMember.txt );
$member->desiredCompressionMethod( COMPRESSION_STORED );
unless ( $zip->writeToFileNamed( someOtherZip.zip ) == AZ_OK ) {
die write error;
}
The Archive::Zip module allows a Perl program to create, manipulate, read, and write Zip archive files.
Zip archives can be created, or you can read from existing zip files.
Once created, they can be written to files, streams, or strings. Members can be added, removed, extracted, replaced, rearranged, and enumerated. They can also be renamed or have their dates, comments, or other attributes queried or modified. Their data can be compressed or uncompressed as needed.
Members can be created from members in existing Zip files, or from existing directories, files, or strings.
This module uses the Compress::Zlib library to read and write the compressed streams inside the files.
<<lessSYNOPSIS
# Create a Zip file
use Archive::Zip qw( :ERROR_CODES :CONSTANTS );
my $zip = Archive::Zip->new();
# Add a directory
my $dir_member = $zip->addDirectory( dirname/ );
# Add a file from a string with compression
my $string_member = $zip->addString( This is a test, stringMember.txt );
$string_member->desiredCompressionMethod( COMPRESSION_DEFLATED );
# Add a file from disk
my $file_member = $zip->addFile( xyz.pl, AnotherName.pl );
# Save the Zip file
unless ( $zip->writeToFileNamed(someZip.zip) == AZ_OK ) {
die write error;
}
# Read a Zip file
my $somezip = Archive::Zip->new();
unless ( $somezip->read( someZip.zip ) == AZ_OK ) {
die read error;
}
# Change the compression type for a file in the Zip
my $member = $somezip->memberNamed( stringMember.txt );
$member->desiredCompressionMethod( COMPRESSION_STORED );
unless ( $zip->writeToFileNamed( someOtherZip.zip ) == AZ_OK ) {
die write error;
}
The Archive::Zip module allows a Perl program to create, manipulate, read, and write Zip archive files.
Zip archives can be created, or you can read from existing zip files.
Once created, they can be written to files, streams, or strings. Members can be added, removed, extracted, replaced, rearranged, and enumerated. They can also be renamed or have their dates, comments, or other attributes queried or modified. Their data can be compressed or uncompressed as needed.
Members can be created from members in existing Zip files, or from existing directories, files, or strings.
This module uses the Compress::Zlib library to read and write the compressed streams inside the files.
Download (0.17MB)
Added: 2007-07-03 License: Perl Artistic License Price:
852 downloads
libsndfile 1.0.17
libsndfile is a library for reading and writing sound files. more>>
Libsndfile is a C library for reading and writing files containing sampled sound (such as the Apple/SGI AIFF format and MS Windows WAV) through one standard library interface.
The library was written to compile and run on a Linux system but should compile and run on just about any Unix (including MacOSX). It can also be compiled and run on Win32 systems using the Microsoft compiler and MacOS (OS9 and earlier) using the Metrowerks compiler. There are directions for compiling libsndfile on these platforms in the Win32 and MacOS directories of the source code distribution.
It was designed to handle both little-endian (such as WAV) and big-endian (such as AIFF) data, and to compile and run correctly on little-endian (such as Intel and DEC/Compaq Alpha) processor systems as well as big-endian processor systems such as Motorola 68k, Power PC, MIPS and Sparc. Hopefully the design of the library will also make it easy to extend for reading and writing new sound file formats.
Main features:
- Ability to read and write a large number of file formats.
- A simple, elegant and easy to use Applications Programming Interface.
- Usable on Unix, Win32, MacOS and others.
- On the fly format conversion, including endian-ness swapping, type conversion and bitwidth scaling.
- Optional normalisation when reading floating point data from files containing integer data.
- Ability to open files in read/write mode.
- The ability to write the file header without closing the file (only on files open for write or read/write).
- Ability to query the library about all supported formats and retrieve text strings describing each format.
Enhancements:
- A C++ header file which acts as a wrapper around the C API was added.
- The documentation on using a precompiled Win32 DLL was fixed.
- Minor bugfixes and cleanups were done.
<<lessThe library was written to compile and run on a Linux system but should compile and run on just about any Unix (including MacOSX). It can also be compiled and run on Win32 systems using the Microsoft compiler and MacOS (OS9 and earlier) using the Metrowerks compiler. There are directions for compiling libsndfile on these platforms in the Win32 and MacOS directories of the source code distribution.
It was designed to handle both little-endian (such as WAV) and big-endian (such as AIFF) data, and to compile and run correctly on little-endian (such as Intel and DEC/Compaq Alpha) processor systems as well as big-endian processor systems such as Motorola 68k, Power PC, MIPS and Sparc. Hopefully the design of the library will also make it easy to extend for reading and writing new sound file formats.
Main features:
- Ability to read and write a large number of file formats.
- A simple, elegant and easy to use Applications Programming Interface.
- Usable on Unix, Win32, MacOS and others.
- On the fly format conversion, including endian-ness swapping, type conversion and bitwidth scaling.
- Optional normalisation when reading floating point data from files containing integer data.
- Ability to open files in read/write mode.
- The ability to write the file header without closing the file (only on files open for write or read/write).
- Ability to query the library about all supported formats and retrieve text strings describing each format.
Enhancements:
- A C++ header file which acts as a wrapper around the C API was added.
- The documentation on using a precompiled Win32 DLL was fixed.
- Minor bugfixes and cleanups were done.
Download (0.79MB)
Added: 2006-08-31 License: LGPL (GNU Lesser General Public License) Price:
1152 downloads
File::Remote 1.17
File::Remote is a Perl module to read/write/edit remote files transparently. more>>
File::Remote is a Perl module to read/write/edit remote files transparently.
SYNOPSIS
#
# Two ways to use File::Remote
#
# First, the function-based style. Here, we can use the
# special :replace tag to overload Perl builtins!
#
use File::Remote qw(:replace); # special :replace tag
# read from a remote file
open(REMOTE, "host:/remote/file") or die $!;
print while (< REMOTE >);
close(REMOTE);
# writing a local file still works!
open(LOCAL, ">>/local/file");
print LOCAL "This is a new line.n";
close(LOCAL);
mkdir("host:/remote/dir", 0755);
unlink("host:/remote/file");
unlink("/local/file"); # still works too!
symlink("host:/remote/src", "host:/remote/dest");
chown("root", "other", "host:/remote/dir/file");
chmod(0600, "host:/remote/dir/file");
#
# Next, the object-oriented style, if you dont want to
# mess with the builtins.
#
use File::Remote;
my $remote = new File::Remote;
# Standard filehandles
$remote->open(FILE, ">>host:/remote/file") or die $!;
print FILE "Heres a line thats added.n";
$remote->close(FILE);
# Create a new file and change its permissions
$remote->mkdir("host:/remote/dir");
$remote->touch("host:/remote/dir/file");
# Move files around
$remote->copy("/local/file", "host:/remote/file") or warn $!;
$remote->move("host:/remote/file", "/local/file");
# Read and write whole files
my @file = $remote->readfile("host:/remote/file");
$remote->writefile("/local/file", @file);
# Backup a file with a suffix
$remote->backup("host:/remote/oldfile", "save");
# Use secure connection methods
my $secure = new File::Remote (rsh => "/usr/local/bin/ssh",
rcp => "/usr/local/bin/scp");
$secure->unlink("/local/file");
$secure->rmdir("host:/remote/dir");
This module takes care of dealing with files regardless of whether theyre local or remote. It allows you to create and edit files without having to worry about their physical location on the network. If a file passed into a function is of the form host:/path/to/file, then File::Remote uses rsh/rcp (or ssh/scp, depending on how you configure it) to edit the file remotely. Otherwise, it assumes the file is local and passes calls directly through to Perls core functions.
The nice thing about this module is that you can use it for all your file calls, since it handles both remote and local files transparently. This means you dont have to put a whole bunch of checks for remote files in your code. Plus, if you use the function-oriented interface along with the :replace tag, you can actually redefine the Perl builtin file functions. This means that your existing Perl scripts can automatically handle remote files with no re-engineering(!).
<<lessSYNOPSIS
#
# Two ways to use File::Remote
#
# First, the function-based style. Here, we can use the
# special :replace tag to overload Perl builtins!
#
use File::Remote qw(:replace); # special :replace tag
# read from a remote file
open(REMOTE, "host:/remote/file") or die $!;
print while (< REMOTE >);
close(REMOTE);
# writing a local file still works!
open(LOCAL, ">>/local/file");
print LOCAL "This is a new line.n";
close(LOCAL);
mkdir("host:/remote/dir", 0755);
unlink("host:/remote/file");
unlink("/local/file"); # still works too!
symlink("host:/remote/src", "host:/remote/dest");
chown("root", "other", "host:/remote/dir/file");
chmod(0600, "host:/remote/dir/file");
#
# Next, the object-oriented style, if you dont want to
# mess with the builtins.
#
use File::Remote;
my $remote = new File::Remote;
# Standard filehandles
$remote->open(FILE, ">>host:/remote/file") or die $!;
print FILE "Heres a line thats added.n";
$remote->close(FILE);
# Create a new file and change its permissions
$remote->mkdir("host:/remote/dir");
$remote->touch("host:/remote/dir/file");
# Move files around
$remote->copy("/local/file", "host:/remote/file") or warn $!;
$remote->move("host:/remote/file", "/local/file");
# Read and write whole files
my @file = $remote->readfile("host:/remote/file");
$remote->writefile("/local/file", @file);
# Backup a file with a suffix
$remote->backup("host:/remote/oldfile", "save");
# Use secure connection methods
my $secure = new File::Remote (rsh => "/usr/local/bin/ssh",
rcp => "/usr/local/bin/scp");
$secure->unlink("/local/file");
$secure->rmdir("host:/remote/dir");
This module takes care of dealing with files regardless of whether theyre local or remote. It allows you to create and edit files without having to worry about their physical location on the network. If a file passed into a function is of the form host:/path/to/file, then File::Remote uses rsh/rcp (or ssh/scp, depending on how you configure it) to edit the file remotely. Otherwise, it assumes the file is local and passes calls directly through to Perls core functions.
The nice thing about this module is that you can use it for all your file calls, since it handles both remote and local files transparently. This means you dont have to put a whole bunch of checks for remote files in your code. Plus, if you use the function-oriented interface along with the :replace tag, you can actually redefine the Perl builtin file functions. This means that your existing Perl scripts can automatically handle remote files with no re-engineering(!).
Download (0.015MB)
Added: 2007-04-27 License: Perl Artistic License Price:
911 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 read and write 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