Exposes instance methods for creating, moving, and enumerating through directories and subdirectories. This class cannot be inherited.
Exposes instance methods for creating, moving, and enumerating through directories and subdirectories...
Definition directory_info.h:129
Provides the base class for both xtd::io::file_info and xtd::io::directory_info objects.
Definition file_system_info.h:87
#define core_export_
Define shared library export.
Definition core_export.h:13
- Inheritance
- xtd::io::file_system_info → xtd::io::directory_info
- Header
#include <xtd/io/directory_info>
- Namespace
- xtd::io
- Library
- xtd.core
- Examples
- The following example demonstrates some of the main members of the xtd::io::directory_info class.
#include <xtd/xtd>
class program {
public:
static auto main() {
try {
if (di.exists()) {
console::write_line("That path exists already.");
return;
}
di.create();
console::write_line("The directory was created successfully.");
di.remove();
console::write_line("The directory was deleted successfully.");
}
console::write_line(
"The process failed: {0}",
e.to_string());
}
}
};
Defines the base class for predefined exceptions in the xtd namespace.
Definition system_exception.h:24
#define startup_(main_method)
Defines the entry point to be called when the application loads. Generally this is set either to the ...
Definition startup.h:175
The xtd::io namespace contains types that allow reading and writing to files and data streams,...
Definition binary_reader.h:16
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition xtd_about_box.h:10
- Examples
- The following example demonstrates how to copy a directory and its contents.
#include <xtd/xtd>
class copy_dir {
public:
return;
}
if (directory::exists(target.
full_name()) ==
false) {
directory::create_directory(target.
full_name());
}
console::write_line(
"Copying {0}\\{1}", target.
full_name(), fi.name());
fi.copy_to(path::combine(target.
to_string(), fi.name()),
true);
}
copy_all(di_source_sub_dir, next_target_sub_dir);
}
}
static auto main() {
string source_directory = "c:\\source_directory";
string target_directory = "c:\\target_directory";
copy_all(di_source, di_target);
}
};
basic_string to_lower() const noexcept
Returns a copy of the current xtd::basic_string converted to lowercase.
Definition basic_string.h:1809
xtd::io::directory_info create_subdirectory(const xtd::string &path) const
Creates a subdirectory or subdirectories on the specified path. The specified path can be relative to...
Provides static methods for the creation, copying, deletion, moving, and opening of files,...
Definition file_info.h:41
xtd::string full_name() const
Gets the full path of the directory or file.
xtd::string to_string() const noexcept override
Returns the original path. Use the xtd::io::file_system_info::full_name or xtd::io::file_system_info:...
- Note
- In members that accept a path as an input string, that path must be well-formed or an exception is raised. For example, if a path is fully qualified but begins with a space, the path is not trimmed in methods of the class. Therefore, the path is malformed and an exception is raised. Similarly, a path or a combination of paths cannot be fully qualified twice. For example, "c:\temp c:\windows" also raises an exception in most cases. Ensure that your paths are well-formed when using methods that accept a path string.
- Examples
- directory_assert.cpp, directory_assert_are_equal.cpp, directory_assert_are_not_equal.cpp, directory_assert_does_not_exist.cpp, directory_assert_exists.cpp, directory_assume.cpp, directory_assume_are_equal.cpp, directory_assume_are_not_equal.cpp, directory_assume_does_not_exist.cpp, directory_assume_exists.cpp, directory_info.cpp, directory_valid.cpp, directory_valid_are_equal.cpp, directory_valid_are_not_equal.cpp, directory_valid_does_not_exist.cpp, directory_valid_exists.cpp, and file_info_move_to.cpp.
|
xtd::io::file_attributes | attributes () const |
| Gets the attributes for the current file or directory.
|
|
xtd::io::file_system_info & | attributes (xtd::io::file_attributes value) |
| Sets the attributes for the current file or directory.
|
|
const xtd::date_time & | creation_time () const |
| Gets the creation time of the current file or directory.
|
|
xtd::io::file_system_info & | creation_time (const xtd::date_time &value) |
| Gets the creation time of the current file or directory.
|
|
xtd::date_time | creation_time_utc () const |
| Gets the creation time, in coordinated universal time (UTC), of the current file or directory.
|
|
xtd::io::file_system_info & | creation_time_utc (const xtd::date_time &value) |
| Sets the creation time, in coordinated universal time (UTC), of the current file or directory.
|
|
virtual xtd::string | extension () const |
| Gets the extension part of the file name, including the leading dot . even if it is the entire file name, or an empty string if no extension is present.
|
|
xtd::string | full_name () const |
| Gets the full path of the directory or file.
|
|
const xtd::date_time & | last_access_time () const |
| Gets the time the current file or directory was last accessed.
|
|
xtd::io::file_system_info & | last_access_time (const xtd::date_time &value) |
| Sets the time the current file or directory was last accessed.
|
|
xtd::date_time | last_access_time_utc () const |
| Gets the time, in coordinated universal time (UTC), that the current file or directory was last accessed.
|
|
xtd::io::file_system_info & | last_access_time_utc (const xtd::date_time &value) |
| Sets the time, in coordinated universal time (UTC), that the current file or directory was last accessed.
|
|
const xtd::date_time & | last_write_time () const |
| Gets the time when the current file or directory was last written to.
|
|
xtd::io::file_system_info & | last_write_time (const xtd::date_time &value) |
| Sets the time when the current file or directory was last written to.
|
|
xtd::date_time | last_write_time_utc () const |
| Gets the time, in coordinated universal time (UTC), when the current file or directory was last written to.
|
|
xtd::io::file_system_info & | last_write_time_utc (const xtd::date_time &value) |
| Sets the time, in coordinated universal time (UTC), when the current file or directory was last written to.
|
|
xtd::io::file_permissions | permissions () const |
| Gets the permissions for the current file or directory.
|
|
xtd::io::file_system_info & | permissions (xtd::io::file_permissions value) |
| Sets the permissions for the current file or directory.
|
|
void | refresh () |
| Refreshes the state of the object.
|
|
xtd::string | to_string () const noexcept override |
| Returns the original path. Use the xtd::io::file_system_info::full_name or xtd::io::file_system_info::name properties for the full path or file/directory name.
|
|
| object ()=default |
| Create a new instance of the ultimate base class object.
|
|
virtual bool | equals (const object &obj) const noexcept |
| Determines whether the specified object is equal to the current object.
|
|
virtual size_t | get_hash_code () const noexcept |
| Serves as a hash function for a particular type.
|
|
virtual type_object | get_type () const noexcept |
| Gets the type of the current instance.
|
|
template<typename object_t > |
xtd::uptr< object_t > | memberwise_clone () const |
| Creates a shallow copy of the current object.
|
|
template<typename object_a_t , typename object_b_t > |
static bool | equals (const object_a_t &object_a, const object_b_t &object_b) noexcept |
| Determines whether the specified object instances are considered equal.
|
|
template<typename object_a_t , typename object_b_t > |
static bool | reference_equals (const object_a_t &object_a, const object_b_t &object_b) noexcept |
| Determines whether the specified object instances are the same instance.
|
|
xtd::string | full_path_ |
| Represents the fully qualified path of the directory or file.
|
|
xtd::string | original_path_ |
| The path originally specified by the user, whether relative or absolute.
|
|
| file_system_info ()=default |
| Initializes a new instance of the xtd::io::file_system_info class.
|
|
| abstract_object ()=default |
| Initializes a new instance of the xtd::abstract_object class.
|
|