c - 在内存中打开和加载文件的方法

标签 c linux file-io

有没有办法可以直接在内存中打开和加载文件? 我有很多遗留代码可以打开网络上存在的文件,然后 查找并读取此文件。我想避免通过网络进行读取和查找。 因此,如果我可以将文件加载到内存中,那么当我打开它时,我就可以进行高效的查找。 有任何想法吗? 我在 Linux 上使用 C。

最佳答案

正如 Mat 所说,看看 mmap 函数。 (这可能是更简单的方法) http://linux.die.net/man/2/mmap

如果您更喜欢 malloc,此链接应该对您有所帮助: http://www.anyexample.com/programming/c/how_to_load_file_into_memory_using_plain_ansi_c_language.xml

关于c - 在内存中打开和加载文件的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7528743/

相关文章:

linux - 防止子进程继承父环境

file-io - 为什么 line-seq 返回 clojure.lang.Cons 而不是 clojure.lang.LazySeq?

android - 访问android SD卡

c - Linux posix C regexec() 不返回所有匹配项

c - 使用 clock_gettime 和 struct stat.mtim 的时序偏差

C 为什么DBL_MANT_DIG宏定义为53

c# - 在 C# 和 .Net Core 中设置鼠标位置

c - 在 C 中,在结束前包含 NULL 的内存块上调用 free() 是否安全?

linux - 如何查找所有者和组已定义权限的目录?

java - 读取文件时,我尝试将每一行存储到相关的LinkedList中,但是无法读取第一个字符。这怎么样?