X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f6bcfd974ef26faf6f91a62cac09827e09463fd1..65baafba0e8cd74f2264b7e2f7625ff5bea84864:/docs/latex/wx/textfile.tex diff --git a/docs/latex/wx/textfile.tex b/docs/latex/wx/textfile.tex index ff7ecc856f..c139c6262a 100644 --- a/docs/latex/wx/textfile.tex +++ b/docs/latex/wx/textfile.tex @@ -7,11 +7,11 @@ native" line termination sequences - in fact, it can be also used to modify the text files and change the line termination characters from one type (say DOS) to another (say Unix). -One word of warning: the class is not at all optimized for big files and so it -will load the file entirely into memory when opened. Of course, you should not +One word of warning: the class is not at all optimized for big files and thus +it will load the file entirely into memory when opened. Of course, you should not work in this way with large files (as an estimation, anything over 1 Megabyte is surely too big for this class). On the other hand, it is not a serious -limitation for the small files like configuration files or programs sources +limitation for small files like configuration files or program sources which are well handled by wxTextFile. The typical things you may do with wxTextFile in order are: @@ -35,6 +35,7 @@ changed with \helpref{GoToLine}{wxtextfilegotoline}. \item Add/remove lines to the file: \helpref{AddLine}{wxtextfileaddline} and \helpref{InsertLine}{wxtextfileinsertline} add new lines while \helpref{RemoveLine}{wxtextfileremoveline} deletes the existing ones. +\helpref{Clear}{wxtextfileclear} resets the file to empty. \item Save your changes: notice that the changes you make to the file will {\bf not} be saved automatically; calling \helpref{Close}{wxtextfileclose} or doing nothing discards them! To save the changes you must explicitly call @@ -119,14 +120,14 @@ be used in this case. \constfunc{bool}{Exists}{\void} -Return TRUE if file exists - the name of the file should have been specified +Return true if file exists - the name of the file should have been specified in the constructor before calling Exists(). \membersection{wxTextFile::IsOpened}\label{wxtextfileisopened} \constfunc{bool}{IsOpened}{\void} -Returns TRUE if the file is currently opened. +Returns true if the file is currently opened. \membersection{wxTextFile::GetLineCount}\label{wxtextfilegetlinecount} @@ -169,16 +170,18 @@ and used by \helpref{GetFirstLine()}{wxtextfilegetfirstline}/\helpref{GetNextLin \constfunc{bool}{Eof}{\void} -Returns TRUE if the current line is the last one. +Returns true if the current line is the last one. \membersection{wxTextFile::GetEOL}\label{wxtextfilegeteol} \constfunc{static const char*}{GetEOL}{\param{wxTextFileType }{type = typeDefault}} Get the line termination string corresponding to given constant. {\it typeDefault} is -the value defined during the compilation and corresponds to the native format of the -platform, i.e. it will be wxTextFileType\_Dos under Windows, wxTextFileType\_Unix under -Unix and wxTextFileType\_Mac under Mac. +the value defined during the compilation and corresponds to the native format +of the platform, i.e. it will be wxTextFileType\_Dos under Windows, +wxTextFileType\_Unix under Unix (including Mac OS X when compiling with the +Apple Developer Tools) and wxTextFileType\_Mac under Mac OS (including +Mac OS X when compiling with CodeWarrior). \membersection{wxTextFile::GetFirstLine}\label{wxtextfilegetfirstline} @@ -189,10 +192,13 @@ allows more "iterator-like" traversal of the list of lines, i.e. you may write something like: \begin{verbatim} -for ( str = GetFirstLine(); !Eof(); str = GetNextLine() ) +wxTextFile file; +... +for ( str = file.GetFirstLine(); !file.Eof(); str = file.GetNextLine() ) { // do something with the current line in str } +// do something with the last line in str \end{verbatim} \membersection{wxTextFile::GetNextLine}\label{wxtextfilegetnextline} @@ -212,7 +218,21 @@ Gets the previous line in the file. \func{wxString\&}{GetLastLine}{\void} -Gets the last line of the file. +Gets the last line of the file. Together with +\helpref{GetPrevLine}{wxtextfilegetprevline} it allows to enumerate the lines +in the file from the end to the beginning like this: + +\begin{verbatim} +wxTextFile file; +... +for ( str = file.GetLastLine(); + file.GetCurrentLine() > 0; + str = file.GetPrevLine() ) +{ + // do something with the current line in str +} +// do something with the first line in str +\end{verbatim} \membersection{wxTextFile::GetLineType}\label{wxtextfilegetlinetype} @@ -242,28 +262,41 @@ Insert a line before the line number {\it n}. \membersection{wxTextFile::Open}\label{wxtextfileopen} -\constfunc{bool}{Open}{\void} +\constfunc{bool}{Open}{\param{wxMBConv\&}{ conv = wxConvUTF8}} -\constfunc{bool}{Open}{\param{const wxString\& }{strFile}} +\constfunc{bool}{Open}{\param{const wxString\& }{strFile}, \param{wxMBConv\&}{ conv = wxConvUTF8}} Open() opens the file with the given name or the name which was given in the \helpref{constructor}{wxtextfilector} and also loads file in memory on success. It will fail if the file does not exist, \helpref{Create}{wxtextfilecreate} should be used in this case. +The {\it conv} argument is only meaningful in Unicode build of wxWidgets when +it is used to convert the file to wide character representation. + \membersection{wxTextFile::RemoveLine}\label{wxtextfileremoveline} \constfunc{void}{RemoveLine}{\param{size\_t }{n}} Delete line number {\it n} from the file. +\membersection{wxTextFile::Clear}\label{wxtextfileclear} + +\constfunc{void}{Clear}{\void} + +Delete all lines from the file, set current line number to 0. + \membersection{wxTextFile::Write}\label{wxtextfilewrite} -\constfunc{bool}{Write}{\param{wxTextFileType }{typeNew = wxTextFileType\_None}} +\constfunc{bool}{Write}{\param{wxTextFileType }{typeNew = wxTextFileType\_None}, \param{wxMBConv\&}{ conv = wxConvUTF8}} Change the file on disk. The {\it typeNew} parameter allows you to change the file format (default argument means "don't change type") and may be used to convert, for example, DOS files to Unix. -Returns TRUE if operation succeeded, FALSE if it failed. +The {\it conv} argument is only meaningful in Unicode build of wxWidgets when +it is used to convert all lines to multibyte representation before writing them +them to physical file. + +Returns true if operation succeeded, false if it failed.