Files
dl/document/html/dl__file_8h.html
2026-09-16 14:07:40 +08:00

271 lines
35 KiB
HTML
Vendored

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="zh">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>dl: D:/dl/dl/io/dl_file.h 文件参考</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">dl
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- 制作者 Doxygen 1.13.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',false,false,'search.php','搜索',false);
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_17297ffb27ce571941f5fb5008f01a1f.html">dl</a></li><li class="navelem"><a class="el" href="dir_8618662f707661daa8368f9a64c30c2e.html">io</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#nested-classes"></a> &#124;
<a href="#namespaces">命名空间</a> &#124;
<a href="#enum-members">枚举</a> &#124;
<a href="#func-members">函数</a> </div>
<div class="headertitle"><div class="title">dl_file.h 文件参考</div></div>
</div><!--header-->
<div class="contents">
<p>文件系统
<a href="#details">更多...</a></p>
<div class="textblock"><code>#include &lt;string&gt;</code><br />
<code>#include &lt;vector&gt;</code><br />
<code>#include &lt;fstream&gt;</code><br />
<code>#include &quot;<a class="el" href="dl__tree_8h_source.html">base/dl_tree.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="dl__buffer_8h_source.html">memory/dl_buffer.h</a>&quot;</code><br />
</div>
<p><a href="dl__file_8h_source.html">浏览该文件的源代码.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdl_1_1_file_1_1_search_rule.html">dl::File::SearchRule</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">过滤规则,不兼容大小写 <a href="structdl_1_1_file_1_1_search_rule.html#details">更多...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
命名空间</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl.html">dl</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html">dl::File</a></td></tr>
<tr class="memdesc:namespacedl_1_1_file"><td class="mdescLeft">&#160;</td><td class="mdescRight">文件系统 <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file_1_1_lua.html">dl::File::Lua</a></td></tr>
<tr class="memdesc:namespacedl_1_1_file_1_1_lua"><td class="mdescLeft">&#160;</td><td class="mdescRight">文件系统lua接口 <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="enum-members" name="enum-members"></a>
枚举</h2></td></tr>
<tr class="memitem:a65ba6efea9a512e9ba5c2d10d5e3fba0" id="r_a65ba6efea9a512e9ba5c2d10d5e3fba0"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a65ba6efea9a512e9ba5c2d10d5e3fba0">dl::File::CopyMode</a> { <a class="el" href="namespacedl_1_1_file.html#a65ba6efea9a512e9ba5c2d10d5e3fba0ab50339a10e1de285ac99d4c3990b8693">dl::File::NONE</a>
, <a class="el" href="namespacedl_1_1_file.html#a65ba6efea9a512e9ba5c2d10d5e3fba0a3a5974efbe92686d30f0261a204e6ee7">dl::File::OVERRIDE</a>
, <a class="el" href="namespacedl_1_1_file.html#a65ba6efea9a512e9ba5c2d10d5e3fba0ab85df04e922fe1dd3c1f0692faeaacef">dl::File::SKIP</a>
}</td></tr>
<tr class="separator:a65ba6efea9a512e9ba5c2d10d5e3fba0"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
函数</h2></td></tr>
<tr class="memitem:a3ee7cd52109759691467c4056ce675f2" id="r_a3ee7cd52109759691467c4056ce675f2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a3ee7cd52109759691467c4056ce675f2">dl::File::GetPathFileAll</a> (std::string_view path, std::vector&lt; std::string &gt; &amp;ret, std::string_view regex=&quot;&quot;, bool recursion=true)</td></tr>
<tr class="memdesc:a3ee7cd52109759691467c4056ce675f2"><td class="mdescLeft">&#160;</td><td class="mdescRight">获取文件夹所有文件 <br /></td></tr>
<tr class="separator:a3ee7cd52109759691467c4056ce675f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7e3a8109f74c2c3bb04fbb6394c94bc" id="r_af7e3a8109f74c2c3bb04fbb6394c94bc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#af7e3a8109f74c2c3bb04fbb6394c94bc">dl::File::GetPathFileAll</a> (std::string_view path, std::vector&lt; std::string &gt; &amp;ret, const <a class="el" href="structdl_1_1_file_1_1_search_rule.html">SearchRule</a> &amp;rule, bool recursion=true)</td></tr>
<tr class="memdesc:af7e3a8109f74c2c3bb04fbb6394c94bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">获取文件夹所有文件 <br /></td></tr>
<tr class="separator:af7e3a8109f74c2c3bb04fbb6394c94bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a66b12455ef0b35f95b15187bd7904f8f" id="r_a66b12455ef0b35f95b15187bd7904f8f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a66b12455ef0b35f95b15187bd7904f8f">dl::File::GetPathContent</a> (std::string_view path, std::vector&lt; std::string &gt; &amp;ret, std::string_view regex=&quot;&quot;, bool folder=true, bool file=true)</td></tr>
<tr class="memdesc:a66b12455ef0b35f95b15187bd7904f8f"><td class="mdescLeft">&#160;</td><td class="mdescRight">获取文件夹当前内容 <br /></td></tr>
<tr class="separator:a66b12455ef0b35f95b15187bd7904f8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6895b6ac40510ed6afda659ca290bf9c" id="r_a6895b6ac40510ed6afda659ca290bf9c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a6895b6ac40510ed6afda659ca290bf9c">dl::File::GetPathContentAll</a> (std::string_view path, <a class="el" href="classdl_1_1_n_tree.html">NTree</a>&lt; std::string &gt; &amp;ret)</td></tr>
<tr class="memdesc:a6895b6ac40510ed6afda659ca290bf9c"><td class="mdescLeft">&#160;</td><td class="mdescRight">获取文件夹所有内容 <br /></td></tr>
<tr class="separator:a6895b6ac40510ed6afda659ca290bf9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28468f91b9f718653b091db839b241b0" id="r_a28468f91b9f718653b091db839b241b0"><td class="memItemLeft" align="right" valign="top">FILE *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a28468f91b9f718653b091db839b241b0">dl::File::GetFile</a> (std::string_view path_name, bool is_binary=true)</td></tr>
<tr class="memdesc:a28468f91b9f718653b091db839b241b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">打开一个文件(只读),可能从压缩包内读取 <br /></td></tr>
<tr class="separator:a28468f91b9f718653b091db839b241b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7afdc780937a728bb52260dfab167e20" id="r_a7afdc780937a728bb52260dfab167e20"><td class="memItemLeft" align="right" valign="top">std::ifstream&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a7afdc780937a728bb52260dfab167e20">dl::File::Get</a> (std::string_view path_name, bool is_binary=true)</td></tr>
<tr class="separator:a7afdc780937a728bb52260dfab167e20"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac04461b090a20b71d44a5f9bfa859077" id="r_ac04461b090a20b71d44a5f9bfa859077"><td class="memItemLeft" align="right" valign="top">std::ofstream&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#ac04461b090a20b71d44a5f9bfa859077">dl::File::Set</a> (std::string_view path_name, bool is_binary=true, bool is_app=false)</td></tr>
<tr class="memdesc:ac04461b090a20b71d44a5f9bfa859077"><td class="mdescLeft">&#160;</td><td class="mdescRight">打开一个文件(只写) <br /></td></tr>
<tr class="separator:ac04461b090a20b71d44a5f9bfa859077"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89af12f224acac3614dbbbc32c53bb66" id="r_a89af12f224acac3614dbbbc32c53bb66"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a89af12f224acac3614dbbbc32c53bb66">dl::File::ConvertMb2U8</a> (std::string_view path_name, std::string_view out)</td></tr>
<tr class="memdesc:a89af12f224acac3614dbbbc32c53bb66"><td class="mdescLeft">&#160;</td><td class="mdescRight">将文本文件从mb转到utf-8 <br /></td></tr>
<tr class="separator:a89af12f224acac3614dbbbc32c53bb66"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acef558947516ea7634735cd708280372" id="r_acef558947516ea7634735cd708280372"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#acef558947516ea7634735cd708280372">dl::File::GetString</a> (std::string_view path_name)</td></tr>
<tr class="memdesc:acef558947516ea7634735cd708280372"><td class="mdescLeft">&#160;</td><td class="mdescRight">按文本读文件 <br /></td></tr>
<tr class="separator:acef558947516ea7634735cd708280372"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae7bb62971470fc3c4cdf7bc161a05206" id="r_ae7bb62971470fc3c4cdf7bc161a05206"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classdl_1_1_buffer.html">Buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#ae7bb62971470fc3c4cdf7bc161a05206">dl::File::GetBuffer</a> (std::string_view path_name)</td></tr>
<tr class="memdesc:ae7bb62971470fc3c4cdf7bc161a05206"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回文件内存 <br /></td></tr>
<tr class="separator:ae7bb62971470fc3c4cdf7bc161a05206"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab131ba95d1079fabc232fbb3452ae132" id="r_ab131ba95d1079fabc232fbb3452ae132"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classdl_1_1_buffer.html">Buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#ab131ba95d1079fabc232fbb3452ae132">dl::File::GetBuffer</a> (std::ifstream &amp;ifs)</td></tr>
<tr class="memdesc:ab131ba95d1079fabc232fbb3452ae132"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回文件内存 <br /></td></tr>
<tr class="separator:ab131ba95d1079fabc232fbb3452ae132"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8281f88a2d0a6e3c28610589e3858e84" id="r_a8281f88a2d0a6e3c28610589e3858e84"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a8281f88a2d0a6e3c28610589e3858e84">dl::File::SaveBuffer</a> (<a class="el" href="classdl_1_1_buffer_view.html">BufferView</a> buf, std::string_view path_name)</td></tr>
<tr class="memdesc:a8281f88a2d0a6e3c28610589e3858e84"><td class="mdescLeft">&#160;</td><td class="mdescRight">将内存保存为文件 <br /></td></tr>
<tr class="separator:a8281f88a2d0a6e3c28610589e3858e84"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ef6bbd7cbaa49af9256047c8150a526" id="r_a4ef6bbd7cbaa49af9256047c8150a526"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a4ef6bbd7cbaa49af9256047c8150a526">dl::File::SaveString</a> (<a class="el" href="classdl_1_1_buffer_view.html">BufferView</a> buf, std::string_view path_name)</td></tr>
<tr class="memdesc:a4ef6bbd7cbaa49af9256047c8150a526"><td class="mdescLeft">&#160;</td><td class="mdescRight">将字符串保存为文件 <br /></td></tr>
<tr class="separator:a4ef6bbd7cbaa49af9256047c8150a526"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae4009d848f74b85d922cd73b9870c353" id="r_ae4009d848f74b85d922cd73b9870c353"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#ae4009d848f74b85d922cd73b9870c353">dl::File::SaveString</a> (std::string_view str, std::string_view path_name)</td></tr>
<tr class="memdesc:ae4009d848f74b85d922cd73b9870c353"><td class="mdescLeft">&#160;</td><td class="mdescRight">将字符串保存为文件 <br /></td></tr>
<tr class="separator:ae4009d848f74b85d922cd73b9870c353"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a22b74cc015e6e1ed05c1455b091807e0" id="r_a22b74cc015e6e1ed05c1455b091807e0"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a22b74cc015e6e1ed05c1455b091807e0">dl::File::GetCrc32</a> (std::string_view path_name)</td></tr>
<tr class="memdesc:a22b74cc015e6e1ed05c1455b091807e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回文件Blake2b值 <br /></td></tr>
<tr class="separator:a22b74cc015e6e1ed05c1455b091807e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65a4abe44715791a0dde4aeb6e9497ed" id="r_a65a4abe44715791a0dde4aeb6e9497ed"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a65a4abe44715791a0dde4aeb6e9497ed">dl::File::IsExist</a> (std::string_view path_name)</td></tr>
<tr class="memdesc:a65a4abe44715791a0dde4aeb6e9497ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回文件是否存在 <br /></td></tr>
<tr class="separator:a65a4abe44715791a0dde4aeb6e9497ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8a0b12c81b58ca4c96026b6804862eac" id="r_a8a0b12c81b58ca4c96026b6804862eac"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a8a0b12c81b58ca4c96026b6804862eac">dl::File::IsEmpty</a> (std::string_view path)</td></tr>
<tr class="memdesc:a8a0b12c81b58ca4c96026b6804862eac"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回文件夹是否为空 <br /></td></tr>
<tr class="separator:a8a0b12c81b58ca4c96026b6804862eac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab8e67825de6beb023ce02d725f7eda9a" id="r_ab8e67825de6beb023ce02d725f7eda9a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#ab8e67825de6beb023ce02d725f7eda9a">dl::File::Delete</a> (std::string_view path_name, bool all=false)</td></tr>
<tr class="memdesc:ab8e67825de6beb023ce02d725f7eda9a"><td class="mdescLeft">&#160;</td><td class="mdescRight">删除文件或路径 <br /></td></tr>
<tr class="separator:ab8e67825de6beb023ce02d725f7eda9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a02a311244c38b5ff3083b8a2435efedd" id="r_a02a311244c38b5ff3083b8a2435efedd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a02a311244c38b5ff3083b8a2435efedd">dl::File::DeleteContent</a> (std::string_view path_name)</td></tr>
<tr class="memdesc:a02a311244c38b5ff3083b8a2435efedd"><td class="mdescLeft">&#160;</td><td class="mdescRight">删除文件夹内容,但不删除文件夹 <br /></td></tr>
<tr class="separator:a02a311244c38b5ff3083b8a2435efedd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f511ec480c6d9ff53bd134d9d63a926" id="r_a6f511ec480c6d9ff53bd134d9d63a926"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a6f511ec480c6d9ff53bd134d9d63a926">dl::File::Rename</a> (std::string_view src, std::string_view tar)</td></tr>
<tr class="memdesc:a6f511ec480c6d9ff53bd134d9d63a926"><td class="mdescLeft">&#160;</td><td class="mdescRight">重命名文件 <br /></td></tr>
<tr class="separator:a6f511ec480c6d9ff53bd134d9d63a926"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7fd5f1b8db8bad24ab1bb6264dbba0d8" id="r_a7fd5f1b8db8bad24ab1bb6264dbba0d8"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a7fd5f1b8db8bad24ab1bb6264dbba0d8">dl::File::Search</a> (std::string_view path, std::string_view file_name)</td></tr>
<tr class="memdesc:a7fd5f1b8db8bad24ab1bb6264dbba0d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">从路径搜索文件 <br /></td></tr>
<tr class="separator:a7fd5f1b8db8bad24ab1bb6264dbba0d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a050ae2e4c1354100a7c2e317e7407f19" id="r_a050ae2e4c1354100a7c2e317e7407f19"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a050ae2e4c1354100a7c2e317e7407f19">dl::File::Copy</a> (std::string_view source, std::string_view target, <a class="el" href="namespacedl_1_1_file.html#a65ba6efea9a512e9ba5c2d10d5e3fba0">CopyMode</a> mode=<a class="el" href="namespacedl_1_1_file.html#a65ba6efea9a512e9ba5c2d10d5e3fba0ab50339a10e1de285ac99d4c3990b8693">CopyMode::NONE</a>, bool recursion=false)</td></tr>
<tr class="memdesc:a050ae2e4c1354100a7c2e317e7407f19"><td class="mdescLeft">&#160;</td><td class="mdescRight">复制文件或文件夹 <br /></td></tr>
<tr class="separator:a050ae2e4c1354100a7c2e317e7407f19"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a699ea40c9ece134967495363f05222" id="r_a7a699ea40c9ece134967495363f05222"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a7a699ea40c9ece134967495363f05222">dl::File::GetExtension</a> (std::string_view path_name, bool has_dot=false)</td></tr>
<tr class="memdesc:a7a699ea40c9ece134967495363f05222"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回文件后缀 <br /></td></tr>
<tr class="separator:a7a699ea40c9ece134967495363f05222"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af89a6e722274226cb17cf6865ba1ad4d" id="r_af89a6e722274226cb17cf6865ba1ad4d"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#af89a6e722274226cb17cf6865ba1ad4d">dl::File::GetFileName</a> (std::string_view path_name)</td></tr>
<tr class="memdesc:af89a6e722274226cb17cf6865ba1ad4d"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回文件名 包含后缀 <br /></td></tr>
<tr class="separator:af89a6e722274226cb17cf6865ba1ad4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c38eaa5c040b78e5df6393d42e8ad82" id="r_a2c38eaa5c040b78e5df6393d42e8ad82"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a2c38eaa5c040b78e5df6393d42e8ad82">dl::File::GetStem</a> (std::string_view path_name)</td></tr>
<tr class="memdesc:a2c38eaa5c040b78e5df6393d42e8ad82"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回文件名 不含后缀 <br /></td></tr>
<tr class="separator:a2c38eaa5c040b78e5df6393d42e8ad82"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7cb61eaef6e197f454cd64c01681dfac" id="r_a7cb61eaef6e197f454cd64c01681dfac"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a7cb61eaef6e197f454cd64c01681dfac">dl::File::GetFolderName</a> (std::string_view path_name)</td></tr>
<tr class="memdesc:a7cb61eaef6e197f454cd64c01681dfac"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回路径所在文件夹名 <br /></td></tr>
<tr class="separator:a7cb61eaef6e197f454cd64c01681dfac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a944ba155c2c810d67a8ee8ca5efd6a1b" id="r_a944ba155c2c810d67a8ee8ca5efd6a1b"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a944ba155c2c810d67a8ee8ca5efd6a1b">dl::File::GetFilePath</a> (std::string_view path_name)</td></tr>
<tr class="memdesc:a944ba155c2c810d67a8ee8ca5efd6a1b"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回文件所在路径 <br /></td></tr>
<tr class="separator:a944ba155c2c810d67a8ee8ca5efd6a1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84b2589d84e66a0ed7f567d0107f9946" id="r_a84b2589d84e66a0ed7f567d0107f9946"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a84b2589d84e66a0ed7f567d0107f9946">dl::File::GetAbsolute</a> (std::string_view path_name)</td></tr>
<tr class="memdesc:a84b2589d84e66a0ed7f567d0107f9946"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回绝对路径 <br /></td></tr>
<tr class="separator:a84b2589d84e66a0ed7f567d0107f9946"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acde2d5b52b91b3d4f6740604f47a4313" id="r_acde2d5b52b91b3d4f6740604f47a4313"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#acde2d5b52b91b3d4f6740604f47a4313">dl::File::GetRelative</a> (std::string_view path_name, std::string_view path_base)</td></tr>
<tr class="memdesc:acde2d5b52b91b3d4f6740604f47a4313"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回相对路径 <br /></td></tr>
<tr class="separator:acde2d5b52b91b3d4f6740604f47a4313"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5d568af0e137dc89ec8ed0f5a92457b" id="r_ab5d568af0e137dc89ec8ed0f5a92457b"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#ab5d568af0e137dc89ec8ed0f5a92457b">dl::File::GetParentPath</a> (std::string_view path_name)</td></tr>
<tr class="memdesc:ab5d568af0e137dc89ec8ed0f5a92457b"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回上一级路径 <br /></td></tr>
<tr class="separator:ab5d568af0e137dc89ec8ed0f5a92457b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0f557be990b6b800795fa76107689ef" id="r_ac0f557be990b6b800795fa76107689ef"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#ac0f557be990b6b800795fa76107689ef">dl::File::CreateFolder</a> (std::string_view path)</td></tr>
<tr class="memdesc:ac0f557be990b6b800795fa76107689ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">创建目录 <br /></td></tr>
<tr class="separator:ac0f557be990b6b800795fa76107689ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a856568eab88642c605e42e29b87a1c6e" id="r_a856568eab88642c605e42e29b87a1c6e"><td class="memItemLeft" align="right" valign="top">time_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a856568eab88642c605e42e29b87a1c6e">dl::File::GetLastWriteTime</a> (std::string_view path_name)</td></tr>
<tr class="memdesc:a856568eab88642c605e42e29b87a1c6e"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回文件最后修改时间 <br /></td></tr>
<tr class="separator:a856568eab88642c605e42e29b87a1c6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21b1933ea35cbf28b4cce42fce888700" id="r_a21b1933ea35cbf28b4cce42fce888700"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a21b1933ea35cbf28b4cce42fce888700">dl::File::CheckPathFileModified</a> (std::string_view path_name, const <a class="el" href="structdl_1_1_file_1_1_search_rule.html">SearchRule</a> &amp;rule, std::string_view cache, bool update)</td></tr>
<tr class="memdesc:a21b1933ea35cbf28b4cce42fce888700"><td class="mdescLeft">&#160;</td><td class="mdescRight">判断路径内的文件是否有修改(包括增加、删除文件) <br /></td></tr>
<tr class="separator:a21b1933ea35cbf28b4cce42fce888700"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7cb490aa80c8fc8070c104916548bb81" id="r_a7cb490aa80c8fc8070c104916548bb81"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a7cb490aa80c8fc8070c104916548bb81">dl::File::PathCurrent</a> ()</td></tr>
<tr class="memdesc:a7cb490aa80c8fc8070c104916548bb81"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回资源路径 <br /></td></tr>
<tr class="separator:a7cb490aa80c8fc8070c104916548bb81"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac3db9ec3eb4786fe8d34521a9e88dcfe" id="r_ac3db9ec3eb4786fe8d34521a9e88dcfe"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#ac3db9ec3eb4786fe8d34521a9e88dcfe">dl::File::PathTemp</a> ()</td></tr>
<tr class="memdesc:ac3db9ec3eb4786fe8d34521a9e88dcfe"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回临时路径 rw <br /></td></tr>
<tr class="separator:ac3db9ec3eb4786fe8d34521a9e88dcfe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad71bbfbb1c1a90047440abf028aa5ba7" id="r_ad71bbfbb1c1a90047440abf028aa5ba7"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#ad71bbfbb1c1a90047440abf028aa5ba7">dl::File::PathStorage</a> ()</td></tr>
<tr class="memdesc:ad71bbfbb1c1a90047440abf028aa5ba7"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回存储路径 rw <br /></td></tr>
<tr class="separator:ad71bbfbb1c1a90047440abf028aa5ba7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a36bbd794f2614ed394d18e91fa1e3784" id="r_a36bbd794f2614ed394d18e91fa1e3784"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a36bbd794f2614ed394d18e91fa1e3784">dl::File::PathStorageRoot</a> ()</td></tr>
<tr class="memdesc:a36bbd794f2614ed394d18e91fa1e3784"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回存储路径根位置 rw <br /></td></tr>
<tr class="separator:a36bbd794f2614ed394d18e91fa1e3784"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ebe295f85a0e5a50db3b6a905ff01b7" id="r_a7ebe295f85a0e5a50db3b6a905ff01b7"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a7ebe295f85a0e5a50db3b6a905ff01b7">dl::File::PathPrivate</a> ()</td></tr>
<tr class="memdesc:a7ebe295f85a0e5a50db3b6a905ff01b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回私有路径 rw <br /></td></tr>
<tr class="separator:a7ebe295f85a0e5a50db3b6a905ff01b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ae206b89c0591bba25e0314b4906c80" id="r_a9ae206b89c0591bba25e0314b4906c80"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a9ae206b89c0591bba25e0314b4906c80">dl::File::PathPublic</a> ()</td></tr>
<tr class="memdesc:a9ae206b89c0591bba25e0314b4906c80"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回公共路径 rw <br /></td></tr>
<tr class="separator:a9ae206b89c0591bba25e0314b4906c80"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5764b72cff687878d5a0623be4d3c625" id="r_a5764b72cff687878d5a0623be4d3c625"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#a5764b72cff687878d5a0623be4d3c625">dl::File::PathRegular</a> ()</td></tr>
<tr class="memdesc:a5764b72cff687878d5a0623be4d3c625"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回常用路径 <br /></td></tr>
<tr class="separator:a5764b72cff687878d5a0623be4d3c625"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac73b5e0cdfedd9f2c98607714cddf643" id="r_ac73b5e0cdfedd9f2c98607714cddf643"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file.html#ac73b5e0cdfedd9f2c98607714cddf643">dl::File::InitFileSystem</a> ()</td></tr>
<tr class="separator:ac73b5e0cdfedd9f2c98607714cddf643"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7a203303a1e486b02dc079c2dc12b55" id="r_af7a203303a1e486b02dc079c2dc12b55"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file_1_1_lua.html#af7a203303a1e486b02dc079c2dc12b55">dl::File::Lua::lua_GetPathFileAll_3</a> (std::string_view path, std::string_view regex, bool recursion)</td></tr>
<tr class="memdesc:af7a203303a1e486b02dc079c2dc12b55"><td class="mdescLeft">&#160;</td><td class="mdescRight">获取文件夹所有文件 <br /></td></tr>
<tr class="separator:af7a203303a1e486b02dc079c2dc12b55"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad869c8924ef234aac34c9755ffc8af0b" id="r_ad869c8924ef234aac34c9755ffc8af0b"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file_1_1_lua.html#ad869c8924ef234aac34c9755ffc8af0b">dl::File::Lua::lua_GetPathFileAll_2</a> (std::string_view path, std::string_view regex)</td></tr>
<tr class="memdesc:ad869c8924ef234aac34c9755ffc8af0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">获取文件夹所有文件 <br /></td></tr>
<tr class="separator:ad869c8924ef234aac34c9755ffc8af0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acdc3742662ec072a6fc286d52026a5de" id="r_acdc3742662ec072a6fc286d52026a5de"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_file_1_1_lua.html#acdc3742662ec072a6fc286d52026a5de">dl::File::Lua::lua_GetPathFileAll_1</a> (std::string_view path)</td></tr>
<tr class="memdesc:acdc3742662ec072a6fc286d52026a5de"><td class="mdescLeft">&#160;</td><td class="mdescRight">获取文件夹所有文件 <br /></td></tr>
<tr class="separator:acdc3742662ec072a6fc286d52026a5de"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">详细描述</h2>
<div class="textblock"><p>文件系统 </p>
<dl class="section version"><dt>版本</dt><dd>1.0 </dd></dl>
<dl class="section author"><dt>作者</dt><dd>lveyou </dd></dl>
<dl class="section date"><dt>日期</dt><dd>21-08-09</dd></dl>
<dl class="section note"><dt>注解</dt><dd>统一操作系统的文件操作(区分大小写)</dd>
<dd>
原则0:使用/表示路径分隔符 </dd>
<dd>
原则1:路径的结尾规定带有/,因为cd到盘根路径必须加/,还因为相对路径不以/开头 </dd>
<dd>
原则2:优先使用相对路径,相对路径开头不带有/ </dd>
<dd>
原则3:/表示根路径、./表示当前目录、../表示上一目录</dd>
<dd>
a表示当前目录下的文件 </dd>
<dd>
a/表示a文件夹 @ntoe a/b表示a文件夹中的b文件 @ntoe a/b/表示a文件夹中的b文件夹</dd>
<dd>
优先使用C++文件流,为了兼容再以C文件操作实现。 </dd>
<dd>
由于std::filesystem的字符编码,为了便于使用,所以封装一层</dd>
<dd>
命名规则:path表示路径、path_name表示路径的文件 file表示文件,folder表示文件夹、content表示所有内容 </dd></dl>
<p class="definition">在文件 <a class="el" href="dl__file_8h_source.html">dl_file.h</a> 中定义.</p>
</div></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
制作者&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.1
</small></address>
</div><!-- doc-content -->
</body>
</html>