javascript - 如何读取目录并获取所有 HTML 文件的数组
问题描述
这是我之前在这里找到的问题的第二部分: 如何在字符串中使用变量
现在我有了一个可以使用的目录,我需要找到该目录中的所有 HTML 文件并使用当前格式的数组。
HMI.FileManager.addPages(
[
{ name: "Default", title: "Starter Page", url: "Files/HMIBuilder/Default/index.html" },
]);
此格式会自动加载添加到此的所有页面。因此,通过在当前目录中进行搜索,然后执行一个数组,它应该会生成该目录中的所有页面。
我已经在目录的字符串中有一个变量,有没有办法使用它来访问目录并在其中搜索 .html 文件,然后加载这些文件的数组或者可能是一个foreach
?
这不起作用,但可能可以使用..
htmlFiles = global("*.html")
foreach (htmlFiles as file) {
path == path(file)
{name: "path['filename']", title: "path['filename']", url: "path['basename']"},
}
编辑:我已经添加了这个,它似乎适用于我需要做的事情。但是,它给了我一个错误,即标签未定义..
@{
var files = Request.QueryString["name"];
string[] filePaths Directory.GetFiles(Server.MapPath("~/Files/HMIBuilder/"), files);
foreach (string name in filePaths)
{
{ name: name, title: name, url: filePaths },
}
}
编辑——将上面的代码更改为下面的代码。我现在收到一个错误,上面写着“名称”是一个变量,但像一个类型一样使用......而 filePaths 变量很好......我很困惑。
@{
var files = Request.QueryString["name"];
string[] filePaths = Directory.GetFiles(Server.MapPath("~/Files/HMIBuilder/"), files);
foreach (string name in filePaths) {
@:{ name: @{name}, title: @{name}, url: @{filePaths} },
}
}
编辑:
经过大量的抛出代码后,我终于让它工作了。下面是最终代码的样子。
@{
var files = Request.QueryString["name"];
var path = ("/Files/HMIBuilder/");
var fullpath = Path.Combine(path, files);
DirectoryInfo d = new DirectoryInfo(Server.MapPath(fullpath));
FileInfo[] Files = d.GetFiles("*.html");
foreach (FileInfo name in Files) {
@:{ name: "@name", title: "@name", url: "@fullpath/@name" },
}
}
解决方案
推荐阅读
- typo3 - 扩展编辑器中的链接处理程序
- javascript - 单击按钮时如何打开模式
- oracle - 尝试从游标中获取时出现 PLS-00103 错误
- oracle - 创建一列,然后使用 PL/SQL 程序向其中添加数据
- java - 从 P7M 获取 SignedContent
- c++ - 当 C++14 已经有泛型 lambda 时,在 C++20 中引入模板 lambda 的需要是什么?
- asp.net - 使用 ASP.NET MVC Angular 不显示数据
- java - 有没有办法在运行时找到随机生成的文件夹下的所有文件?
- java - JsonMappingException:已经有 POJO 用于 (java.lang.Integer)
- php - 如何解决 php laravel 框架中的 mcrypt 错误“使用未定义的常量 MCRYPT_RIJNDAEL_128”?