public class File extends Object
Modifier and Type | Field and Description |
---|---|
static int |
APR_BLK
a block device
|
static int |
APR_CHR
a character device
|
static int |
APR_CUR
Current
|
static int |
APR_DIR
a directory
|
static int |
APR_END
Go to end of file
|
static int |
APR_FILE_ATTR_EXECUTABLE
File is executable
|
static int |
APR_FILE_ATTR_HIDDEN
File is hidden
|
static int |
APR_FILE_ATTR_READONLY
File is read-only
|
static int |
APR_FINFO_ATIME
Creation or inode-changed time
|
static int |
APR_FINFO_CSIZE
Size of the file
|
static int |
APR_FINFO_CTIME
Modification Time
|
static int |
APR_FINFO_DEV
Storage size consumed by the file
|
static int |
APR_FINFO_DIRENT
an atomic unix apr_stat()
|
static int |
APR_FINFO_GPROT
User protection bits
|
static int |
APR_FINFO_GROUP
User
|
static int |
APR_FINFO_ICASE
World protection bits
|
static int |
APR_FINFO_IDENT
type, mtime, ctime, atime, size
|
static int |
APR_FINFO_INODE
Device
|
static int |
APR_FINFO_LINK
use OS's default permissions
|
static int |
APR_FINFO_MIN
->name in proper case
|
static int |
APR_FINFO_MTIME
Stat the link not the file itself if it is a link
|
static int |
APR_FINFO_NAME
if dev is case insensitive
|
static int |
APR_FINFO_NLINK
Inode
|
static int |
APR_FINFO_NORM
all protections
|
static int |
APR_FINFO_OWNER
dev and inode
|
static int |
APR_FINFO_PROT
user and group
|
static int |
APR_FINFO_SIZE
Access Time
|
static int |
APR_FINFO_TYPE
Number of links
|
static int |
APR_FINFO_UPROT
Group
|
static int |
APR_FINFO_USER
Type
|
static int |
APR_FINFO_WPROT
Group protection bits
|
static int |
APR_FLOCK_EXCLUSIVE
Exclusive lock.
|
static int |
APR_FLOCK_NONBLOCK
do not block while acquiring the file lock
|
static int |
APR_FLOCK_SHARED
Shared lock.
|
static int |
APR_FLOCK_TYPEMASK
mask to extract lock type
|
static int |
APR_FOPEN_APPEND
Append to the end of the file
|
static int |
APR_FOPEN_BINARY
Open the file in binary mode
|
static int |
APR_FOPEN_BUFFERED
Open the file for buffered I/O
|
static int |
APR_FOPEN_CREATE
Create the file if not there
|
static int |
APR_FOPEN_DELONCLOSE
Delete the file after close
|
static int |
APR_FOPEN_EXCL
Open should fail if APR_CREATE and file exists.
|
static int |
APR_FOPEN_LARGEFILE
Platform dependent flag to enable large file support;
Warning : The APR_LARGEFILE flag only has effect on some platforms where sizeof(apr_off_t) == 4. |
static int |
APR_FOPEN_NOCLEANUP
Do not register a cleanup when the file is opened
|
static int |
APR_FOPEN_READ
Open the file for reading
|
static int |
APR_FOPEN_SENDFILE_ENABLED
Advisory flag that this file should support
apr_socket_sendfile operation
|
static int |
APR_FOPEN_SHARELOCK
Platform dependent support for higher level locked read/write
access to support writes across process/machines
|
static int |
APR_FOPEN_TRUNCATE
Open the file and truncate to 0 length
|
static int |
APR_FOPEN_WRITE
Open the file for writing
|
static int |
APR_FOPEN_XTHREAD
Platform dependent tag to open the file for
use across multiple threads
|
static int |
APR_FPROT_GEXECUTE
Write by group
|
static int |
APR_FPROT_GREAD
Set group id
|
static int |
APR_FPROT_GSETID
Execute by user
|
static int |
APR_FPROT_GWRITE
Read by group
|
static int |
APR_FPROT_OS_DEFAULT
Execute by others
|
static int |
APR_FPROT_UEXECUTE
Write by user
|
static int |
APR_FPROT_UREAD
Set user id
|
static int |
APR_FPROT_USETID |
static int |
APR_FPROT_UWRITE
Read by user
|
static int |
APR_FPROT_WEXECUTE
Write by others
|
static int |
APR_FPROT_WREAD
Sticky bit
|
static int |
APR_FPROT_WSTICKY
Execute by group
|
static int |
APR_FPROT_WWRITE
Read by others
|
static int |
APR_LNK
a symbolic link
|
static int |
APR_NOFILE
no file type determined
|
static int |
APR_PIPE
a FIFO / pipe
|
static int |
APR_REG
a regular file
|
static int |
APR_SET
Set the file position
|
static int |
APR_SOCK
a [unix domain] socket
|
static int |
APR_UNKFILE
a file of some other unknown type
|
Constructor and Description |
---|
File() |
Modifier and Type | Method and Description |
---|---|
static int |
append(String fromPath,
String toPath,
int perms,
long pool)
Append the specified file to another file.
|
static int |
attrsSet(String fname,
int attributes,
int mask,
long pool)
Set attributes of the specified file.
|
static int |
close(long file)
Close the specified file.
|
static int |
copy(String fromPath,
String toPath,
int perms,
long pool)
Copy the specified file to another file.
|
static long |
dup(long newFile,
long oldFile,
long pool)
Duplicate the specified file descriptor.
|
static int |
dup2(long newFile,
long oldFile,
long pool)
Duplicate the specified file descriptor and close the original.
|
static int |
eof(long fptr)
Are we at the end of the file
|
static int |
flagsGet(long file)
Retrieve the flags that were passed into apr_file_open()
when the file was opened.
|
static int |
flush(long thefile)
Flush the file's buffer.
|
static int |
getc(long thefile)
Read a character from the specified file.
|
static FileInfo |
getInfo(int wanted,
long thefile)
Get the specified file's stats.
|
static int |
gets(byte[] buf,
int offset,
long thefile)
Read a string from the specified file.
|
static FileInfo |
getStat(String fname,
int wanted,
long pool)
Get the specified file's stats.
|
static int |
infoGet(FileInfo finfo,
int wanted,
long thefile)
Get the specified file's stats.
|
static int |
lock(long thefile,
int type)
Establish a lock on the specified, open file.
|
static long |
mktemp(String templ,
int flags,
long pool)
Open a temporary file
|
static int |
mtimeSet(String fname,
long mtime,
long pool)
Set the mtime of the specified file.
|
static String |
nameGet(long thefile)
Return the file name of the current file.
|
static long |
open(String fname,
int flag,
int perm,
long pool)
Open the specified file.
|
static int |
permsSet(String fname,
int perms)
Set the specified file's permission bits.
|
static int |
pipeCreate(long[] io,
long pool)
Create an anonymous pipe.
|
static long |
pipeTimeoutGet(long thepipe)
Get the timeout value for a pipe or manipulate the blocking state.
|
static int |
pipeTimeoutSet(long thepipe,
long timeout)
Set the timeout value for a pipe or manipulate the blocking state.
|
static int |
putc(byte ch,
long thefile)
Write a character into the specified file.
|
static int |
puts(byte[] str,
long thefile)
Write the string into the specified file.
|
static int |
read(long thefile,
byte[] buf,
int offset,
int nbytes)
Read data from the specified file.
|
static int |
readb(long thefile,
ByteBuffer buf,
int offset,
int nbytes)
Read data from the specified file.
|
static int |
readFull(long thefile,
byte[] buf,
int offset,
int nbytes)
Read data from the specified file, ensuring that the buffer is filled
before returning.
|
static int |
readFullb(long thefile,
ByteBuffer buf,
int offset,
int nbytes)
Read data from the specified file, ensuring that the buffer is filled
before returning.
|
static int |
remove(String path,
long pool)
Delete the specified file.
|
static int |
rename(String fromPath,
String toPath,
long pool)
Rename the specified file.
|
static long |
seek(long thefile,
int where,
long offset)
Move the read/write file offset to a specified byte within a file.
|
static int |
stat(FileInfo finfo,
String fname,
int wanted,
long pool)
Get the specified file's stats.
|
static int |
trunc(long fp,
long offset)
Truncate the file's length to the specified offset
|
static int |
ungetc(byte ch,
long thefile)
Put a character back onto a specified stream.
|
static int |
unlock(long thefile)
Remove any outstanding locks on the file.
|
static int |
write(long thefile,
byte[] buf,
int offset,
int nbytes)
Write data to the specified file.
|
static int |
writeb(long thefile,
ByteBuffer buf,
int offset,
int nbytes)
Write data to the specified file.
|
static int |
writeFull(long thefile,
byte[] buf,
int offset,
int nbytes)
Write data to the specified file, ensuring that all of the data is
written before returning.
|
static int |
writeFullb(long thefile,
ByteBuffer buf,
int offset,
int nbytes)
Write data to the specified file, ensuring that all of the data is
written before returning.
|
static int |
writev(long thefile,
byte[][] vec)
Write data from array of byte arrays to the specified file.
|
static int |
writevFull(long thefile,
byte[][] vec)
Write data from array of byte arrays to the specified file,
ensuring that all of the data is written before returning.
|
public static final int APR_FOPEN_READ
public static final int APR_FOPEN_WRITE
public static final int APR_FOPEN_CREATE
public static final int APR_FOPEN_APPEND
public static final int APR_FOPEN_TRUNCATE
public static final int APR_FOPEN_BINARY
public static final int APR_FOPEN_EXCL
public static final int APR_FOPEN_BUFFERED
public static final int APR_FOPEN_DELONCLOSE
public static final int APR_FOPEN_XTHREAD
public static final int APR_FOPEN_SHARELOCK
public static final int APR_FOPEN_NOCLEANUP
public static final int APR_FOPEN_SENDFILE_ENABLED
public static final int APR_FOPEN_LARGEFILE
public static final int APR_SET
public static final int APR_CUR
public static final int APR_END
public static final int APR_FILE_ATTR_READONLY
public static final int APR_FILE_ATTR_EXECUTABLE
public static final int APR_FILE_ATTR_HIDDEN
public static final int APR_FLOCK_SHARED
public static final int APR_FLOCK_EXCLUSIVE
public static final int APR_FLOCK_TYPEMASK
public static final int APR_FLOCK_NONBLOCK
public static final int APR_NOFILE
public static final int APR_REG
public static final int APR_DIR
public static final int APR_CHR
public static final int APR_BLK
public static final int APR_PIPE
public static final int APR_LNK
public static final int APR_SOCK
public static final int APR_UNKFILE
public static final int APR_FPROT_USETID
public static final int APR_FPROT_UREAD
public static final int APR_FPROT_UWRITE
public static final int APR_FPROT_UEXECUTE
public static final int APR_FPROT_GSETID
public static final int APR_FPROT_GREAD
public static final int APR_FPROT_GWRITE
public static final int APR_FPROT_GEXECUTE
public static final int APR_FPROT_WSTICKY
public static final int APR_FPROT_WREAD
public static final int APR_FPROT_WWRITE
public static final int APR_FPROT_WEXECUTE
public static final int APR_FPROT_OS_DEFAULT
public static final int APR_FINFO_LINK
public static final int APR_FINFO_MTIME
public static final int APR_FINFO_CTIME
public static final int APR_FINFO_ATIME
public static final int APR_FINFO_SIZE
public static final int APR_FINFO_CSIZE
public static final int APR_FINFO_DEV
public static final int APR_FINFO_INODE
public static final int APR_FINFO_NLINK
public static final int APR_FINFO_TYPE
public static final int APR_FINFO_USER
public static final int APR_FINFO_GROUP
public static final int APR_FINFO_UPROT
public static final int APR_FINFO_GPROT
public static final int APR_FINFO_WPROT
public static final int APR_FINFO_ICASE
public static final int APR_FINFO_NAME
public static final int APR_FINFO_MIN
public static final int APR_FINFO_IDENT
public static final int APR_FINFO_OWNER
public static final int APR_FINFO_PROT
public static final int APR_FINFO_NORM
public static final int APR_FINFO_DIRENT
public static long open(String fname, int flag, int perm, long pool) throws Error
fname
- The full path to the file (using / on all systems)flag
- Or'ed value of:
APR_FOPEN_READ open for reading APR_FOPEN_WRITE open for writing APR_FOPEN_CREATE create the file if not there APR_FOPEN_APPEND file ptr is set to end prior to all writes APR_FOPEN_TRUNCATE set length to zero if file exists APR_FOPEN_BINARY not a text file (This flag is ignored on UNIX because it has no meaning) APR_FOPEN_BUFFERED buffer the data. Default is non-buffered APR_FOPEN_EXCL return error if APR_CREATE and file exists APR_FOPEN_DELONCLOSE delete the file after closing. APR_FOPEN_XTHREAD Platform dependent tag to open the file for use across multiple threads APR_FOPEN_SHARELOCK Platform dependent support for higher level locked read/write access to support writes across process/machines APR_FOPEN_NOCLEANUP Do not register a cleanup with the pool passed in on the pool argument (see below). The apr_os_file_t handle in apr_file_t will not be closed when the pool is destroyed. APR_FOPEN_SENDFILE_ENABLED Open with appropriate platform semantics for sendfile operations. Advisory only, apr_socket_sendfile does not check this flag.
perm
- Access permissions for file.pool
- The pool to use.
If perm is APR_OS_DEFAULT and the file is being created,
appropriate default permissions will be used.Error
- An error occurredpublic static int close(long file)
file
- The file descriptor to close.public static int flush(long thefile)
thefile
- The file descriptor to flushpublic static long mktemp(String templ, int flags, long pool) throws Error
templ
- The template to use when creating a temp file.flags
- The flags to open the file with. If this is zero,
the file is opened with
APR_CREATE | APR_READ | APR_WRITE | APR_EXCL | APR_DELONCLOSEpool
- The pool to allocate the file out of.Error
- An error occurredpublic static int remove(String path, long pool)
path
- The full path to the file (using / on all systems)pool
- The pool to use.
If the file is open, it won't be removed until all
instances are closed.public static int rename(String fromPath, String toPath, long pool)
fromPath
- The full path to the original file (using / on all systems)toPath
- The full path to the new file (using / on all systems)pool
- The pool to use.public static int copy(String fromPath, String toPath, int perms, long pool)
fromPath
- The full path to the original file (using / on all systems)toPath
- The full path to the new file (using / on all systems)perms
- Access permissions for the new file if it is created.
In place of the usual or'd combination of file permissions, the
value APR_FILE_SOURCE_PERMS may be given, in which case the source
file's permissions are copied.pool
- The pool to use.public static int append(String fromPath, String toPath, int perms, long pool)
fromPath
- The full path to the source file (use / on all systems)toPath
- The full path to the destination file (use / on all systems)perms
- Access permissions for the destination file if it is created.
In place of the usual or'd combination of file permissions, the
value APR_FILE_SOURCE_PERMS may be given, in which case the source
file's permissions are copied.pool
- The pool to use.public static int puts(byte[] str, long thefile)
str
- The string to write. Must be NUL terminated!thefile
- The file descriptor to write topublic static long seek(long thefile, int where, long offset) throws Error
thefile
- The file descriptorwhere
- How to move the pointer, one of:
APR_SET -- set the offset to offset APR_CUR -- add the offset to the current position APR_END -- add the offset to the current file size
offset
- The offset to move the pointer to.Error
- If an error occurs reading the filepublic static int putc(byte ch, long thefile)
ch
- The character to write.thefile
- The file descriptor to write topublic static int ungetc(byte ch, long thefile)
ch
- The character to write.thefile
- The file descriptor to write topublic static int write(long thefile, byte[] buf, int offset, int nbytes)
thefile
- The file descriptor to write to.buf
- The buffer which contains the data.offset
- Start offset in bufnbytes
- The number of bytes to write; (-1) for full array.public static int writeb(long thefile, ByteBuffer buf, int offset, int nbytes)
thefile
- The file descriptor to write to.buf
- The direct Byte buffer which contains the data.offset
- Start offset in bufnbytes
- The number of bytes to writepublic static int writeFull(long thefile, byte[] buf, int offset, int nbytes)
thefile
- The file descriptor to write to.buf
- The buffer which contains the data.offset
- Start offset in bufnbytes
- The number of bytes to write; (-1) for full array.public static int writeFullb(long thefile, ByteBuffer buf, int offset, int nbytes)
thefile
- The file descriptor to write to.buf
- The direct ByteBuffer which contains the data.offset
- Start offset in bufnbytes
- The number of bytes to write.public static int writev(long thefile, byte[][] vec)
thefile
- The file descriptor to write to.vec
- The array from which to get the data to write to the file.public static int writevFull(long thefile, byte[][] vec)
thefile
- The file descriptor to write to.vec
- The array from which to get the data to write to the file.public static int read(long thefile, byte[] buf, int offset, int nbytes)
thefile
- The file descriptor to read from.buf
- The buffer to store the data to.offset
- Start offset in bufnbytes
- The number of bytes to read (-1) for full array.public static int readb(long thefile, ByteBuffer buf, int offset, int nbytes)
thefile
- The file descriptor to read from.buf
- The direct Byte buffer to store the data to.offset
- Start offset in bufnbytes
- The number of bytes to read.public static int readFull(long thefile, byte[] buf, int offset, int nbytes)
thefile
- The file descriptor to read from.buf
- The buffer to store the data to.offset
- Start offset in bufnbytes
- The number of bytes to read (-1) for full array.public static int readFullb(long thefile, ByteBuffer buf, int offset, int nbytes)
thefile
- The file descriptor to read from.buf
- The direct ByteBuffer to store the data to.offset
- Start offset in bufnbytes
- The number of bytes to read.public static int gets(byte[] buf, int offset, long thefile)
buf
- The buffer to store the string in.offset
- Start offset in bufthefile
- The file descriptor to read frompublic static int getc(long thefile) throws Error
thefile
- The file descriptor to read fromError
- If an error occurs reading the filepublic static int eof(long fptr)
fptr
- The apr file we are testing.public static String nameGet(long thefile)
thefile
- The currently open file.public static int permsSet(String fname, int perms)
fname
- The file (name) to apply the permissions to.perms
- The permission bits to apply to the file.public static int attrsSet(String fname, int attributes, int mask, long pool)
fname
- The full path to the file (using / on all systems)attributes
- Or'd combination of
APR_FILE_ATTR_READONLY - make the file readonly APR_FILE_ATTR_EXECUTABLE - make the file executable APR_FILE_ATTR_HIDDEN - make the file hidden
mask
- Mask of valid bits in attributes.pool
- the pool to use.public static int mtimeSet(String fname, long mtime, long pool)
fname
- The full path to the file (using / on all systems)mtime
- The mtime to apply to the file in microsecondspool
- The pool to use.public static int lock(long thefile, int type)
thefile
- The file to lock.type
- The type of lock to establish on the file.public static int unlock(long thefile)
thefile
- The file to unlock.public static int flagsGet(long file)
file
- The file to retrieve flags.public static int trunc(long fp, long offset)
fp
- The file to truncateoffset
- The offset to truncate to.public static int pipeCreate(long[] io, long pool)
io
- io[0] The file descriptors to use as input to the pipe.
io[1] The file descriptor to use as output from the pipe.pool
- The pool to operate on.public static long pipeTimeoutGet(long thepipe) throws Error
thepipe
- The pipe we are getting a timeout for.Error
- If an error occurspublic static int pipeTimeoutSet(long thepipe, long timeout)
thepipe
- The pipe we are setting a timeout on.timeout
- The timeout value in microseconds. Values < 0 mean
wait forever, 0 means do not wait at all.public static long dup(long newFile, long oldFile, long pool) throws Error
newFile
- The file to duplicate.
newFile must point to a valid apr_file_t, or point to NULL.oldFile
- The file to duplicate.pool
- The pool to use for the new file.Error
- If an error occurs reading the file descriptorpublic static int dup2(long newFile, long oldFile, long pool)
newFile
- The old file that is to be closed and reused.
newFile MUST point at a valid apr_file_t. It cannot be NULL.oldFile
- The file to duplicate.pool
- The pool to use for the new file.public static int stat(FileInfo finfo, String fname, int wanted, long pool)
finfo
- Where to store the information about the file, which is
never touched if the call fails.fname
- The name of the file to stat.wanted
- The desired apr_finfo_t fields, as a bit flag of APR_FINFO_ valuespool
- the pool to use to allocate the new file.public static FileInfo getStat(String fname, int wanted, long pool)
fname
- The name of the file to stat.wanted
- The desired apr_finfo_t fields, as a bit flag of APR_FINFO_ valuespool
- the pool to use to allocate the new file.public static int infoGet(FileInfo finfo, int wanted, long thefile)
finfo
- Where to store the information about the file.wanted
- The desired apr_finfo_t fields, as a bit flag of APR_FINFO_ valuesthefile
- The file to get information about.public static FileInfo getInfo(int wanted, long thefile)
wanted
- The desired apr_finfo_t fields, as a bit flag of APR_FINFO_ valuesthefile
- The file to get information about.Copyright © 2000-2016 Apache Software Foundation. All Rights Reserved.