NAME
Dancer::FileUtils - helper providing file utilities
VERSION
version 1.3521
SYNOPSIS
# for 'path/to/file'
my
$dir
= dirname(
$path
);
# returns 'path/to'
my
$path
= path(
$path
);
# returns '/abs/path/to/file'
my
$content
= read_file_content( path(
'folder'
,
'folder'
,
'file'
) );
my
@content
= read_file_content( path(
'folder'
,
'folder'
,
'file'
) );
open
my
$fh
,
'<'
,
$file
or
die
"$!\n"
;
set_file_mode(
$fh
);
my
@content
= read_file_content(
$fh
);
my
$content
= read_file_content(
$fh
);
DESCRIPTION
Dancer::FileUtils includes a few file related utilities related that Dancer uses internally. Developers may use it instead of writing their own file reading subroutines or using additional modules.
SUBROUTINES/METHODS
dirname
my
$dir
= dirname(
$path
);
Exposes File::Basename's dirname, to allow fetching a directory name from a path. On most OS, returns all but last level of file path. See File::Basename for details.
open_file
my
$fh
= open_file(
'<'
,
$file
) or
die
$message
;
Calls open and returns a filehandle. Takes in account the 'charset' setting from Dancer's configuration to open the file in the proper encoding (or defaults to utf-8 if setting not present).
path
my
$path
= path(
'folder'
,
'folder'
,
'filename'
);
Provides comfortable path resolving, internally using File::Spec.
read_file_content
my
@content
= read_file_content(
$file
);
my
$content
= read_file_content(
$file
);
Returns either the content of a file (whose filename is the input), undef if the file could not be opened.
In array context it returns each line (as defined by $/) as a separate element; in scalar context returns the entire contents of the file.
read_glob_content
open
my
$fh
,
'<'
,
$file
or
die
"$!\n"
;
my
@content
= read_glob_content(
$fh
);
my
$content
= read_glob_content(
$fh
);
Same as read_file_content, only it accepts a file handle. Returns the content and closes the file handle.
set_file_mode
set_file_mode(
$fh
);
Applies charset setting from Dancer's configuration. Defaults to utf-8 if no charset setting.
EXPORT
Nothing by default. You can provide a list of subroutines to import.
AUTHOR
Dancer Core Developers
COPYRIGHT AND LICENSE
This software is copyright (c) 2010 by Alexis Sukrieh.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.