LibreOffice
LibreOffice 5.2 SDK C/C++ API Reference
|
The file class object provides access to file contents and attributes. More...
#include <file.hxx>
Public Member Functions | |
File (const ::rtl::OUString &ustrFileURL) | |
Constructor. More... | |
~File () | |
Destructor. More... | |
rtl::OUString | getURL () const |
Obtain the URL. More... | |
RC | open (sal_uInt32 uFlags) |
Open a regular file. More... | |
RC | close () |
Close an open file. More... | |
RC | setPos (sal_uInt32 uHow, sal_Int64 uPos) SAL_WARN_UNUSED_RESULT |
Set the internal position pointer of an open file. More... | |
RC | getPos (sal_uInt64 &uPos) |
Retrieve the current position of the internal pointer of an open file. More... | |
RC | isEndOfFile (sal_Bool *pIsEOF) |
Test if the end of a file is reached. More... | |
RC | setSize (sal_uInt64 uSize) |
Set the file size of an open file. More... | |
RC | getSize (sal_uInt64 &rSize) |
Get the file size of an open file. More... | |
RC | read (void *pBuffer, sal_uInt64 uBytesRequested, sal_uInt64 &rBytesRead) |
Read a number of bytes from a file. More... | |
RC | write (const void *pBuffer, sal_uInt64 uBytesToWrite, sal_uInt64 &rBytesWritten) |
Write a number of bytes to a file. More... | |
RC | readLine (::rtl::ByteSequence &aSeq) |
Read a line from a file. More... | |
RC | sync () const |
Synchronize the memory representation of a file with that on the physical medium. More... | |
Static Public Member Functions | |
static RC | copy (const ::rtl::OUString &ustrSourceFileURL, const ::rtl::OUString &ustrDestFileURL) |
Copy a file to a new destination. More... | |
static RC | move (const ::rtl::OUString &ustrSourceFileURL, const ::rtl::OUString &ustrDestFileURL) |
Move a file or directory to a new destination or renames it. More... | |
static RC | remove (const ::rtl::OUString &ustrFileURL) |
Remove a regular file. More... | |
static RC | setAttributes (const ::rtl::OUString &ustrFileURL, sal_uInt64 uAttributes) |
Set file attributes. More... | |
static RC | setTime (const ::rtl::OUString &ustrFileURL, const TimeValue &rCreationTime, const TimeValue &rLastAccessTime, const TimeValue &rLastWriteTime) |
Set the file time. More... | |
![]() | |
static RC | getCanonicalName (const ::rtl::OUString &ustrRequestedURL, ::rtl::OUString &ustrValidURL) |
Determine a valid unused canonical name for a requested name. More... | |
static RC | getAbsoluteFileURL (const ::rtl::OUString &ustrBaseDirectoryURL, const ::rtl::OUString &ustrRelativeFileURL, ::rtl::OUString &ustrAbsoluteFileURL) |
Convert a path relative to a given directory into an full qualified file URL. More... | |
static RC | getSystemPathFromFileURL (const ::rtl::OUString &ustrFileURL, ::rtl::OUString &ustrSystemPath) |
Convert a file URL into a system dependent path. More... | |
static RC | getFileURLFromSystemPath (const ::rtl::OUString &ustrSystemPath, ::rtl::OUString &ustrFileURL) |
Convert a system dependent path into a file URL. More... | |
static RC | searchFileURL (const ::rtl::OUString &ustrFileName, const ::rtl::OUString &ustrSearchPath, ::rtl::OUString &ustrFileURL) |
Searche a full qualified system path or a file URL. More... | |
static RC | getTempDirURL (::rtl::OUString &ustrTempDirURL) |
Retrieves the file URL of the system's temporary directory path. More... | |
static RC | createTempFile (::rtl::OUString *pustrDirectoryURL, oslFileHandle *pHandle, ::rtl::OUString *pustrTempFileURL) |
Creates a temporary file in the directory provided by the caller or the directory returned by getTempDirURL. More... | |
Friends | |
class | DirectoryItem |
Additional Inherited Members | |
![]() | |
enum | RC { E_None = osl_File_E_None, E_PERM = osl_File_E_PERM, E_NOENT = osl_File_E_NOENT, E_SRCH = osl_File_E_SRCH, E_INTR = osl_File_E_INTR, E_IO = osl_File_E_IO, E_NXIO = osl_File_E_NXIO, E_2BIG = osl_File_E_2BIG, E_NOEXEC = osl_File_E_NOEXEC, E_BADF = osl_File_E_BADF, E_CHILD = osl_File_E_CHILD, E_AGAIN = osl_File_E_AGAIN, E_NOMEM = osl_File_E_NOMEM, E_ACCES = osl_File_E_ACCES, E_FAULT = osl_File_E_FAULT, E_BUSY = osl_File_E_BUSY, E_EXIST = osl_File_E_EXIST, E_XDEV = osl_File_E_XDEV, E_NODEV = osl_File_E_NODEV, E_NOTDIR = osl_File_E_NOTDIR, E_ISDIR = osl_File_E_ISDIR, E_INVAL = osl_File_E_INVAL, E_NFILE = osl_File_E_NFILE, E_MFILE = osl_File_E_MFILE, E_NOTTY = osl_File_E_NOTTY, E_FBIG = osl_File_E_FBIG, E_NOSPC = osl_File_E_NOSPC, E_SPIPE = osl_File_E_SPIPE, E_ROFS = osl_File_E_ROFS, E_MLINK = osl_File_E_MLINK, E_PIPE = osl_File_E_PIPE, E_DOM = osl_File_E_DOM, E_RANGE = osl_File_E_RANGE, E_DEADLK = osl_File_E_DEADLK, E_NAMETOOLONG = osl_File_E_NAMETOOLONG, E_NOLCK = osl_File_E_NOLCK, E_NOSYS = osl_File_E_NOSYS, E_NOTEMPTY = osl_File_E_NOTEMPTY, E_LOOP = osl_File_E_LOOP, E_ILSEQ = osl_File_E_ILSEQ, E_NOLINK = osl_File_E_NOLINK, E_MULTIHOP = osl_File_E_MULTIHOP, E_USERS = osl_File_E_USERS, E_OVERFLOW = osl_File_E_OVERFLOW, E_NOTREADY = osl_File_E_NOTREADY, E_invalidError = osl_File_E_invalidError, E_TIMEDOUT = osl_File_E_TIMEDOUT, E_NETWORK = osl_File_E_NETWORK } |
The file class object provides access to file contents and attributes.
|
inline |
Constructor.
ustrFileURL | [in] The full qualified URL of the file. Relative paths are not allowed. |
|
inline |
Destructor.
|
inline |
Close an open file.
|
inlinestatic |
Copy a file to a new destination.
Copies a file to a new destination. Copies only files not directories. No assumptions should be made about preserving attributes or file time.
ustrSourceFileURL | [in] Full qualified URL of the source file. |
ustrDestFileURL | [in] Full qualified URL of the destination file. A directory is NOT a valid destination file! |
|
inline |
Retrieve the current position of the internal pointer of an open file.
uPos | [out] On success receives the current position of the file pointer. |
|
inline |
Get the file size of an open file.
Gets the file size of an open file. The position of the file pointer is not affeced by this function.
rSize | [out] Current size in bytes. |
|
inline |
Test if the end of a file is reached.
pIsEOF | [out] Points to a variable that receives the end-of-file status. |
|
inlinestatic |
Move a file or directory to a new destination or renames it.
Moves a file or directory to a new destination or renames it. File time and attributes are preserved.
ustrSourceFileURL | [in] Full qualified URL of the source file. |
ustrDestFileURL | [in] Full qualified URL of the destination file. An existing directory is NOT a valid destination ! |
|
inline |
Open a regular file.
Open a file. Only regular files can be openend.
uFlags | [in] Specifies the open mode. |
|
inline |
Read a number of bytes from a file.
Reads a number of bytes from a file. The internal file pointer is increased by the number of bytes read.
pBuffer | [out] Points to a buffer which receives data. The buffer must be large enough to hold uBytesRequested bytes. |
uBytesRequested | [in] Number of bytes which should be retrieved. |
rBytesRead | [out] On success the number of bytes which have actually been retrieved. |
|
inline |
Read a line from a file.
Reads a line from a file. The new line delimiter is NOT returned!
aSeq | [in/out] A reference to a rtl::ByteSequence that will hold the line read on success. |
|
inlinestatic |
Remove a regular file.
ustrFileURL | [in] Full qualified URL of the file to remove. |
|
inlinestatic |
Set file attributes.
ustrFileURL | [in] The full qualified file URL. |
uAttributes | [in] Attributes of the file to be set. |
|
inline |
Set the internal position pointer of an open file.
uHow | [in] Distance to move the internal position pointer (from uPos). |
uPos | [in] Absolute position from the beginning of the file. |
|
inline |
Set the file size of an open file.
Sets the file size of an open file. The file can be truncated or enlarged by the function. The position of the file pointer is not affeced by this function.
uSize | [in] New size in bytes. |
|
inlinestatic |
Set the file time.
ustrFileURL | [in] The full qualified URL of the file. |
rCreationTime | [in] Creation time of the given file. |
rLastAccessTime | [in] Time of the last access of the given file. |
rLastWriteTime | [in] Time of the last modifying of the given file. |
|
inline |
Synchronize the memory representation of a file with that on the physical medium.
The function ensures that all modified data and attributes of the file associated with the given file handle have been written to the physical medium. In case the hard disk has a write cache enabled, the data may not really be on permanent storage when osl_syncFile returns.
The value of the input parameter is invalid
In addition to these error codes others may occur as well, for instance:
|
inline |
Write a number of bytes to a file.
Writes a number of bytes to a file. The internal file pointer is increased by the number of bytes read.
pBuffer | [in] Points to a buffer which contains the data. |
uBytesToWrite | [in] Number of bytes which should be written. |
rBytesWritten | [out] On success the number of bytes which have actually been written. |
|
friend |