如何使用文件函数从内存中的string读取数据

如何使用文件函数从内存中的string读取数据,第1张

概述如何使用文件函数内存中的string读取数据

我有一个从文件中读取数据的函数(即它传递一个file *)。

我想要完成的是使用该函数从string中读取数据,即我想将string中的数据视为物理文件中的数据(例如使用fgets,fseek等),所以在效果,一个内存文件。

我试图通过setvbuf将数据string与一个/ dev / null(Nul)文件关联起来(类似于我在这个stackoverflow问题中读到的),但是我做错了,或者不是这样做。

有人可以帮助我在C中实现这一点,最好是以便携的方式(实际上,我不介意使用OS特定的function/ ifdefs只要它工作,它不是/太/复杂)。

为什么malloc / new捕获callstack?

如何使用LowLevelKeyboardHook挂钩Win + Tab

如果InitialDirectory被设置,OpenfileDialog是否可以自动select具有在filename中设置的值的文件?

使用特定版本的Python创buildwindows Python virtualenv

JsON问题与执行

编辑:

#include <stdio.h> #include <string.h> #define NulL_L "/dev/null" #define NulL_W "Nul" file* open_memfile(char *pc_file_as_string) { file *f = fopen(NulL_L,"rb"); int i_size = strlen(pc_file_as_string); setvbuf(f,pc_file_as_string,_IolBF,i_size); return f; } int main() { char c_line[100] = ""; char pc_file_as_string[] = "line1 asdfnline2 fsa afdsnnline4"; file *f = open_memfile(pc_file_as_string); int i = 4; while (i > 0) { fgets(c_line,100,f); if (c_line == NulL) break; else puts(c_line); i--; } fclose(f); return 0; }

log4j2输出不写入日志文件

有没有办法在windows中find用户设置的系统区域设置?

我怎样才能设置一个true / falsevariables?

windows的PHP 5.5中缺lessPHP_zip.dll

C ++堆栈跟踪问题

在linux上,你会使用fmemopen 。

在windows上没有可用的fmemopen功能。

您可以使用CreatefileMapPing / MapVIEwOffile函数创建并映射内存(分页)文件,但这将返回一个windows文件句柄,这对您而言是无法使用的。

使用cstdio中提供的sscanf和其他字符串处理函数。

总结

以上是内存溢出为你收集整理的如何使用文件函数从内存中的string读取数据全部内容,希望文章能够帮你解决如何使用文件函数从内存中的string读取数据所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1286081.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存