是否可以像txt文件一样读取cpp文件
Is it possible to read cpp file like a txt file?
我正在处理一个基于Web C++类似IDE的项目。我想添加一个打开按钮,用户不仅可以在其中打开文本文件(完成),还可以打开.cpp文件。这可能吗?
这是打开.txt文件并附加到我的内容可编辑div 的代码。
function readSingleFile(evt) {
var f = evt.target.files[0];
//console.log(f);
if (!f) {
alert("Failed to load file");
return;
}
if (f.name.indexOf('.txt') == -1) {
alert(f.name + " is not a valid text file.");
return;
}
var r = new FileReader();
r.onload = function (e) {
var contents = e.target.result; //.replace("rn","<br/>");
contents = contents.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"');
alert("Got the file.n" + "name: " + f.name + "n" + "type: " + f.type + "n" + "size: " + f.size + " bytesn" + "contents: " + contents);
var tmpSent = "";
var newContents = "";
for (var i = 0; i < contents.length; i++) {
if(contents.charAt(i) == 'n') {
newContents += "<div>"+tmpSent+"</div>";
tmpSent = "";
}
else
tmpSent += contents.charAt(i);
};
if(tmpSent.length>0)
newContents += "<div>"+tmpSent+"</div>";
console.log(newContents);
document.getElementById('board').innerHTML = newContents;
}
r.readAsText(f);
}
document.getElementById('fileinput').addEventListener('change', readSingleFile, false);
http://jsfiddle.net/88vtR/33/
查看呈现的代码,我看到它只强制打开.txt文件
if (f.name.indexOf('.txt') == -1) {
alert(f.name + " is not a valid text file.");
return;
}
如果您想保持相同的方法,我也会在其中添加对.cpp的检查。
不确定涉及的其他代码,但我会使用一个打开的文件对话框,该对话框仅允许您想要的文件扩展名,这将使上述检查变得多余。
相关文章:
- 如何将不同的可执行文件合并到一个窗口框架中进行编码?像浏览器一样
- 如何像在 C++ 中处理数组一样对 .txt 文件中的字符进行寻址?
- 是否可以将前向声明和常规声明合并到一个文件中,然后像分开一样使用它?
- C++代码生成核心文件,就像 gdb >> gcore 一样
- 线程 1 从文件读取,就像线程 2 写入同一文件一样
- 如何创建像标准库头一样的头,以便在不链接头中函数的所有对象文件的情况下编译程序?
- 如何在文件系统之上添加层?就像OneDrive或Google云端硬盘中的缓存一样
- C 像网格一样读取文件
- 如何在运行时像可执行文件一样"启动"DLL?
- 无法将文件读入字符数组(像往常一样,某些指针问题)
- 如何创建文件路径可以像磁盘一样访问的虚拟文件系统
- 如何像二进制文件一样读取提升mapped_region对象
- 是否可以像txt文件一样读取cpp文件
- 在 C++ 中创建文件,就像按右键单击>新建>新建文本文档时一样
- 上传的文件和原来的不一样
- 有没有一种更简单的方法可以像在java中使用包一样在C++中重用代码?制作头文件比较复杂
- c++标准和C语言在哪里说的是一样的:编译单元(.cpp文件)中的变量是按照声明的顺序初始化的
- 你能像如何从Jar文件中获取信息一样从c++ Lib文件中获取信息吗?
- 为什么保存到文件和加载的时间(NULL)和仅仅时间(NULL)是不一样的
- 如何像直接访问文件一样使用内存:类似于read和fwrite函数