source: trunk/gsdl/lib/fileutil.h@ 1837

Last change on this file since 1837 was 1837, checked in by sjboddie, 23 years ago

Made a few cosmetic changes to the "Administration" pages and added the
ability to view the last 100 lines of the usage log. This meant making a
change to the file_tail() function to allow for the very long lines that
occur in the log file.

  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 2.3 KB
Line 
1/**********************************************************************
2 *
3 * fileutil.h -- a few useful file utilities
4 * Copyright (C) 1999 The New Zealand Digital Library Project
5 *
6 * A component of the Greenstone digital library software
7 * from the New Zealand Digital Library Project at the
8 * University of Waikato, New Zealand.
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation; either version 2 of the License, or
13 * (at your option) any later version.
14 *
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
19 *
20 * You should have received a copy of the GNU General Public License
21 * along with this program; if not, write to the Free Software
22 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
23 *
24 *********************************************************************/
25
26
27#ifndef FILEUTIL_H
28#define FILEUTIL_H
29
30#include "text_t.h"
31
32
33// returns the proper concatenation of the two paths
34text_t filename_cat (text_t path1, text_t path2);
35text_t filename_cat (text_t path1, text_t path2, text_t path3);
36text_t filename_cat (text_t path1, text_t path2, text_t path3, text_t path4);
37text_t filename_cat (text_t path1, text_t path2, text_t path3, text_t path4,
38 text_t path5);
39text_t filename_cat (text_t path1, text_t path2, text_t path3, text_t path4,
40 text_t path5, text_t path6);
41
42// returns true if filename can be opened
43bool file_exists (const text_t &filename);
44
45// returns true if filename can be written to
46bool file_writable (const text_t &filename);
47
48// returns true if directory exists
49bool directory_exists (const text_t &dirname);
50
51// note that read_dir appends to filelist, it doesn't clear
52// it first
53bool read_dir (const text_t &dirname, text_tarray &filelist);
54bool read_dir (const text_t &dirname, text_tset &filelist);
55
56bool file_copy (const text_t &fromfile, const text_t &tofile);
57
58text_t file_tail (const text_t &filename, int numlines, int linelength);
59
60// returns true if directory created successfully
61bool mk_dir (const text_t &dirname);
62
63bool read_file (const text_t &filename, text_t &content);
64
65#endif
Note: See TracBrowser for help on using the repository browser.