SFtpFile C++ Reference Documentation

CkSFtpFile

Current Version: 11.0.0

Represents a remote SFTP file.

Object Creation

// Local variable on the stack
CkSFtpFile obj;

// Dynamically allocate/delete
CkSFtpFile *pObj = new CkSFtpFile();
// ...
delete pObj;

Properties

CreateTimeStr
void get_CreateTimeStr(CkString &str);
const char *createTimeStr(void);

The file creation date and time. This property is only supported by servers running SFTP v4 or later. The date/time is an RFC822 formatted string.

top
DebugLogFilePath
void get_DebugLogFilePath(CkString &str);
const char *debugLogFilePath(void);
void put_DebugLogFilePath(const char *ansiOrUtf8Str);

If set to a file path, this property logs the LastErrorText of each Chilkat method or property call to the specified file. This logging helps identify the context and history of Chilkat calls leading up to any crash or hang, aiding in debugging.

Enabling the VerboseLogging property provides more detailed information. This property is mainly used for debugging rare instances where a Chilkat method call causes a hang or crash, which should generally not happen.

Possible causes of hangs include:

  • A timeout property set to 0, indicating an infinite timeout.
  • A hang occurring within an event callback in the application code.
  • An internal bug in the Chilkat code causing the hang.

More Information and Examples
top
Filename
void get_Filename(CkString &str);
const char *filename(void);

The filename (or directory name, symbolic link name, etc.)

top
FileType
void get_FileType(CkString &str);
const char *fileType(void);

One of the following values:

  regular
  directory
  symLink
  special
  unknown
  socket
  charDevice
  blockDevice
  fifo

top
Gid
int get_Gid(void);

The integer Group ID of the file.

top
Group
void get_Group(CkString &str);
const char *group(void);

The group ownership of the file. This property is only supported by servers running SFTP v4 or later.

top
IsAppendOnly
bool get_IsAppendOnly(void);

If true, this file may only be appended. This property is only supported by servers running SFTP v6 or later.

top
IsArchive
bool get_IsArchive(void);

If true, the file should be included in backup / archive operations. This property is only supported by servers running SFTP v6 or later.

top
IsCaseInsensitive
bool get_IsCaseInsensitive(void);

This attribute applies only to directories. This attribute means that files and directory names in this directory should be compared without regard to case. This property is only supported by servers running SFTP v6 or later.

top
IsCompressed
bool get_IsCompressed(void);

The file is stored on disk using file-system level transparent compression. This flag does not affect the file data on the wire. This property is only supported by servers running SFTP v6 or later.

top
IsDirectory
bool get_IsDirectory(void);

If true, this is a directory.

top
IsEncrypted
bool get_IsEncrypted(void);

The file is stored on disk using file-system level transparent encryption. This flag does not affect the file data on the wire (for either READ or WRITE requests.) This property is only supported by servers running SFTP v6 or later.

top
IsHidden
bool get_IsHidden(void);

If true, the file SHOULD NOT be shown to user unless specifically requested.

top
IsImmutable
bool get_IsImmutable(void);

The file cannot be deleted or renamed, no hard link can be created to this file, and no data can be written to the file.

This bit implies a stronger level of protection than ReadOnly, the file permission mask or ACLs. Typically even the superuser cannot write to immutable files, and only the superuser can set or remove the bit.

This property is only supported by servers running SFTP v6 or later.

top
IsReadOnly
bool get_IsReadOnly(void);

If true, the file is read-only. This property is only supported by servers running SFTP v6 or later.

top
IsRegular
bool get_IsRegular(void);

true if this is a normal file (not a directory or any of the other non-file types).

top
IsSparse
bool get_IsSparse(void);

The file is a sparse file; this means that file blocks that have not been explicitly written are not stored on disk. For example, if a client writes a buffer at 10 M from the beginning of the file, the blocks between the previous EOF marker and the 10 M offset would not consume physical disk space.

Some servers may store all files as sparse files, in which case this bit will be unconditionally set. Other servers may not have a mechanism for determining if the file is sparse, and so the file MAY be stored sparse even if this flag is not set.

This property is only supported by servers running SFTP v6 or later.

top
IsSymLink
bool get_IsSymLink(void);

true if this is a symbolic link.

top
IsSync
bool get_IsSync(void);

When the file is modified, the changes are written synchronously to the disk. This property is only supported by servers running SFTP v6 or later.

top
IsSystem
bool get_IsSystem(void);

true if the file is part of the operating system. This property is only supported by servers running SFTP v6 or later.

top
LastAccessTimeStr
void get_LastAccessTimeStr(CkString &str);
const char *lastAccessTimeStr(void);

The last-access date and time as an RFC822 formatted string.

top
LastErrorHtml
void get_LastErrorHtml(CkString &str);
const char *lastErrorHtml(void);

Provides HTML-formatted information about the last called method or property. If a method call fails or behaves unexpectedly, check this property for details. Note that information is available regardless of the method call's success.

top
LastErrorText
void get_LastErrorText(CkString &str);
const char *lastErrorText(void);

Provides plain text information about the last called method or property. If a method call fails or behaves unexpectedly, check this property for details. Note that information is available regardless of the method call's success.

top
LastErrorXml
void get_LastErrorXml(CkString &str);
const char *lastErrorXml(void);

Provides XML-formatted information about the last called method or property. If a method call fails or behaves unexpectedly, check this property for details. Note that information is available regardless of the method call's success.

top
LastMethodSuccess
bool get_LastMethodSuccess(void);
void put_LastMethodSuccess(bool newVal);

Indicates the success or failure of the most recent method call: true means success, false means failure. This property remains unchanged by property setters or getters. This method is present to address challenges in checking for null or Nothing returns in certain programming languages.

top
LastModifiedTimeStr
void get_LastModifiedTimeStr(CkString &str);
const char *lastModifiedTimeStr(void);

The last-modified date and time as an RFC822 formatted string. Other date/time formats can be obtained by calling the GetLastModifiedDt method to return a CkDateTime object, and then use CkDateTime to get the desired format.

top
Owner
void get_Owner(CkString &str);
const char *owner(void);

The owner of the file. This property is only supported by servers running SFTP v4 or later.

top
Permissions
int get_Permissions(void);

The 'permissions' field contains a bit mask specifying file permissions. These permissions correspond to the st_mode field of the stat structure defined by POSIX [IEEE.1003-1.1996].

This protocol uses the following values for the symbols declared in the POSIX standard.

       S_IRUSR  0000400 (octal)
       S_IWUSR  0000200
       S_IXUSR  0000100
       S_IRGRP  0000040
       S_IWGRP  0000020
       S_IXGRP  0000010
       S_IROTH  0000004
       S_IWOTH  0000002
       S_IXOTH  0000001
       S_ISUID  0004000
       S_ISGID  0002000
       S_ISVTX  0001000

top
Size32
int get_Size32(void);

Size of the file in bytes. If the size is too large for 32-bits, a -1 is returned.

top
Size64
__int64 get_Size64(void);

Size of the file in bytes. If the file size is a number too large for 64 bits, you have an AMAZINGLY large disk drive.

top
SizeStr
void get_SizeStr(CkString &str);
const char *sizeStr(void);

Same as Size64, but the number is returned as a string in decimal format.

top
Uid
int get_Uid(void);

The integer User ID of the file.

top
Utf8
bool get_Utf8(void);
void put_Utf8(bool newVal);

When set to true, all const char * arguments and return values are interpreted as UTF-8 strings. When set to false, they are interpreted as ANSI strings.

In Chilkat v11.0.0 and later, the default value is true. Before v11.0.0, it was false.

top
VerboseLogging
bool get_VerboseLogging(void);
void put_VerboseLogging(bool newVal);

If set to true, then the contents of LastErrorText (or LastErrorXml, or LastErrorHtml) may contain more verbose information. The default value is false. Verbose logging should only be used for debugging. The potentially large quantity of logged information may adversely affect peformance.

top
Version
void get_Version(CkString &str);
const char *version(void);

Version of the component/library, such as "10.1.0"

More Information and Examples
top

Methods

Deprecated

GetCreateDt
CkDateTime *GetCreateDt(void);
This method is deprecated.

Applications should instead access the CreateTimeStr property.

Returns the file creation date and time (GMT / UTC). This method is only supported by servers running SFTP v4 or later.

Note: The application is responsible for deleting (via the C++ delete operator) the object returned by this method.

Returns NULL on failure

top
GetLastAccessDt
CkDateTime *GetLastAccessDt(void);
This method is deprecated.

Applications should instead access the LastAccessTimeStr property.

Returns the last-access date and time (GMT / UTC).

Note: The application is responsible for deleting (via the C++ delete operator) the object returned by this method.

Returns NULL on failure

top
GetLastModifiedDt
CkDateTime *GetLastModifiedDt(void);
This method is deprecated.

Applications should instead access the LastModifiedTimeStr property.

Returns the last-modified date and time (GMT / UTC).

Note: The application is responsible for deleting (via the C++ delete operator) the object returned by this method.

Returns NULL on failure

More Information and Examples
top