1 \section{\class{wxFTP
}}\label{wxftp
}
3 \wxheading{Derived from
}
5 \helpref{wxProtocol
}{wxprotocol
}
7 \wxheading{Include files
}
13 \helpref{wxSocketBase
}{wxsocketbase
}
15 % ----------------------------------------------------------------------------
17 % ----------------------------------------------------------------------------
19 \latexignore{\rtfignore{\wxheading{Members
}}}
21 \membersection{wxFTP::SendCommand
}
23 \func{bool
}{SendCommand
}{\param{const wxString\&
}{ command
},
\param{char
}{ret
}}
25 Send the specified
{\it command
} to the FTP server.
{\it ret
} specifies
28 \wxheading{Return value
}
30 TRUE if the command has been sent successfully, else FALSE.
32 % ----------------------------------------------------------------------------
34 \membersection{wxFTP::GetLastResult
}
36 \func{const wxString\&
}{GetLastResult
}{\void}
38 Returns the last command result.
40 % ----------------------------------------------------------------------------
42 \membersection{wxFTP::ChDir
}
44 \func{bool
}{ChDir
}{\param{const wxString\&
}{ dir
}}
46 Change the current FTP working directory.
47 Returns TRUE if successful.
49 \membersection{wxFTP::MkDir
}
51 \func{bool
}{MkDir
}{\param{const wxString\&
}{ dir
}}
53 Create the specified directory in the current FTP working directory.
54 Returns TRUE if successful.
56 \membersection{wxFTP::RmDir
}
58 \func{bool
}{RmDir
}{\param{const wxString\&
}{ dir
}}
60 Remove the specified directory from the current FTP working directory.
61 Returns TRUE if successful.
63 \membersection{wxFTP::Pwd
}
65 \func{wxString
}{Pwd
}{\void}
67 Returns the current FTP working directory.
69 % ----------------------------------------------------------------------------
71 \membersection{wxFTP::Rename
}
73 \func{bool
}{Rename
}{\param{const wxString\&
}{ src
},
\param{const wxString\&
}{ dst
}}
75 Rename the specified
{\it src
} element to
{\it dst
}. Returns TRUE if successful.
77 % ----------------------------------------------------------------------------
79 \membersection{wxFTP::RmFile
}
81 \func{bool
}{RmFile
}{\param{const wxString\&
}{ path
}}
83 Delete the file specified by
{\it path
}. Returns TRUE if successful.
85 % ----------------------------------------------------------------------------
87 \membersection{wxFTP::SetUser
}
89 \func{void
}{SetUser
}{\param{const wxString\&
}{ user
}}
91 Sets the user name to be sent to the FTP server to be allowed to log in.
93 \wxheading{Default value
}
95 The default value of the user name is "anonymous".
99 This parameter can be included in a URL if you want to use the URL manager.
100 For example, you can use: "ftp://a
\_user:a
\_password@a.host:service/a
\_directory/a
\_file"
101 to specify a user and a password.
103 \membersection{wxFTP::SetPassword
}
105 \func{void
}{SetPassword
}{\param{const wxString\&
}{ passwd
}}
107 Sets the password to be sent to the FTP server to be allowed to log in.
109 \wxheading{Default value
}
111 The default value of the user name is your email address. For example, it could
112 be "username@userhost.domain". This password is built by getting the current
113 user name and the host name of the local machine from the system.
117 This parameter can be included in a URL if you want to use the URL manager.
118 For example, you can use: "ftp://a
\_user:a
\_password@a.host:service/a
\_directory/a
\_file"
119 to specify a user and a password.
121 % ----------------------------------------------------------------------------
122 \membersection{wxFTP::GetList
}
124 \func{wxList *
}{GetList
}{\param{const wxString\&
}{ wildcard
}}
126 The GetList function is quite low-level. It returns the list of the files in
127 the current directory. The list can be filtered using the
{\it wildcard
} string.
128 If
{\it wildcard
} is a NULL string, it will return all files in directory.
130 The form of the list can change from one peer system to another. For example,
131 for a UNIX peer system, it will look like this:
134 -r--r--r--
1 guilhem lavaux
12738 Jan
16 20:
17 cmndata.cpp
135 -r--r--r--
1 guilhem lavaux
10866 Jan
24 16:
41 config.cpp
136 -rw-rw-rw-
1 guilhem lavaux
29967 Dec
21 19:
17 cwlex_yy.c
137 -rw-rw-rw-
1 guilhem lavaux
14342 Jan
22 19:
51 cwy_tab.c
138 -r--r--r--
1 guilhem lavaux
13890 Jan
29 19:
18 date.cpp
139 -r--r--r--
1 guilhem lavaux
3989 Feb
8 19:
18 datstrm.cpp
142 But on Windows system, it will look like this:
145 winamp~
1 exe
520196 02-
25-
1999 19:
28 winamp204.exe
146 1 file(s)
520 196 bytes
149 The list is a string list and one node corresponds to a line sent by the peer.
151 % ----------------------------------------------------------------------------
153 \membersection{wxFTP::GetOutputStream
}
155 \func{wxOutputStream *
}{GetOutputStream
}{\param{const wxString\&
}{ file
}}
157 Initializes an output stream to the specified
{\it file
}. The returned
158 stream has all but the seek functionality of wxStreams. When the user finishes
159 writing data, he has to delete the stream to close it.
161 \wxheading{Return value
}
163 An initialized write-only stream.
167 \helpref{wxOutputStream
}{wxoutputstream
}
169 % ----------------------------------------------------------------------------
171 \membersection{wxFTP::GetInputStream
}\label{wxftpgetinput
}
173 \func{wxInputStream *
}{GetInputStream
}{\param{const wxString\&
}{ path
}}
175 Creates a new input stream on the the specified path. You can use all but the seek
176 functionality of wxStream. Seek isn't available on all streams. For example,
177 http or ftp streams do not deal with it. Other functions like Tell
178 are not available for this sort of stream, at present.
179 You will be notified when the EOF is reached by an error.
181 \wxheading{Return value
}
183 Returns NULL if an error occured (it could be a network failure or the fact
184 that the file doesn't exist).
186 Returns the initialized stream. You will have to delete it yourself when you
187 don't need it anymore. The destructor closes the DATA stream connection but
188 will leave the COMMAND stream connection opened. It means that you can still
189 send new commands without reconnecting.
191 \wxheading{Example of a standalone connection (without wxURL)
}
195 wxInputStream *in_stream;
198 ftp.Connect("a.host.domain");
199 ftp.ChDir("a_directory");
200 in_stream = ftp.GetInputStream("a_file_to_get");
202 data = new char
[in_stream->StreamSize()
];
204 in_stream->Read(data, in_stream->StreamSize());
205 if (in_stream->LastError() != wxStream_NOERROR)
{
209 delete in_stream; /* Close the DATA connection */
211 ftp.Close(); /* Close the COMMAND connection */
216 \helpref{wxInputStream
}{wxinputstream
}