草庐IT

read_eof

全部标签

c - Windows 上的 read() 系统调用无法读取二进制文件

我想读取图像文件以将它们保存在内存中,然后再将它们与SDL一起使用。我刚刚意识到Windows上的open()和read()无法完全读取我的文件,但在linux/BSD上却可以!这是我的代码:#include#include#include#include#defineIMGPATH"rabbit.png"intmain(intargc,char*argv[]){intfd;structstatst;void*data;size_tnbread;fd=open(IMGPATH,O_RDONLY);if(fd在Windows上它将产生:无法完全读取:预期=19281,读取=5。perro

windows - 用于 Windows 的 Git : fatal: early EOF

昨天我安装了一个新的Gitwindowsserver2.6.4,它在Macgit客户端(git协议(protocol))上运行良好今天,我正在努力让第二个客户端(Windows7)正常工作。在尝试让它工作的过程中,我已经将Windows服务器和客户端升级到最近发布的git2.7.0我试过禁用压缩...我试过无线和有线网络(Windows客户端和服务器位于同一张table上)。我在客户端上禁用了AV。我已尝试按照建议调整内存设置here这是客户端输出:bash>gitclonegit://server.fqdn/repo.gitCloninginto'repo'...remote:08:

c - windows下EOF的值

我写了这段代码:#includeintmain(){intc;while((c=getchar())!=EOF)putchar(c);return0;}在windows下,我发现我必须输入ctrl+z才能停止程序,我还打印了EOF的值,它是-1。但是,当我输入-1而不是ctrl+z时,程序继续执行,我想了解原因。谢谢! 最佳答案 输入"-1"作为文本不会返回整数值-1而是返回两个字符,即'-'(对应于ASCII值45)和一个'1'(对应于ASCII值49)。两者都不等于EOF(十进制为-1)。根据定义,您不能输入被getchar()

c - read() 只从文件中读取几个字节

我想使用read()函数读取文件的内容。我尝试了以下方法:#defineBUFFER_LENGTH(1024)charbuffer[BUFFER_LENGTH];//Thefirstversionofthequestionhadatypo://voidread_file(constcharfilename)//Thiswouldproduceacompilerwarning.voidread_file(constchar*filename){ssize_tread_bytes=0;//Thefirstversionhadthemodeinhexinsteadofoctal.////in

windows - 如何正确使用 SSL_read() 和 select()?

我尝试使用OpenSSL创建一个C++TLS客户端,它在Windows上使用非阻塞套接字。我想使用SSL_read()/SSL_write()和select()函数,但我找不到运行良好的算法,而且网络也没有提供好的简单示例。在接收到最后一个数据block之后,select()已经准备好了一个超时返回。我不明白OpenSSLapi,SSL_pending()已经返回0并选择超时??选择导致最后一个数据block的临界延迟。我的recv_buffer()算法是这样的:我有检查套接字是否可读或可写的功能(运行良好):intCSocket::socket_RWable(intrw_flag,c

Python 2 原始输入(): EOFError when reading a line in WINDOWS 7 command prompt

注意:关于sublimetext中的pythonraw_input()已经问过许多相同的问题。这个问题不是关于崇高的。python代码在Windows命令提示符中调用,与sublime终端不同,它支持交互式输入。我有一个python程序,它使用内置函数raw_input()获取用户输入。见下文。defpassword_score():pwd=raw_input('Enterapassword:')gname=raw_input('Enteryourfirstname:')...我在cmd中调用程序echopassword_score()|python-ia06q1.py其中a06q1.

c++ - MinGW C++ : Reading a file with non-ascii file name

简单任务:我想读取一个文件名不是ascii的文件。在linux和MacOS上,我只是将文件名作为UTF-8编码字符串传递给fstream构造函数。在Windows上,这会失败。正如我从thisquestion中了解到的那样,windows根本不支持utf-8文件名。但是,它提供了一个自己的非标准open方法,该方法采用utf-16wchar_t*。因此,我可以简单地将我的string转换为utf-16wstring并且没问题。然而,在MinGW标准库中,fstream的wchar_t*open方法根本不存在。那么,如何在MinGW上打开一个非ascii文件名?

c - Windows 控制台下的 Stdin 和 EOF 行为

我正在学习C中输入的工作原理。我最大的困难是理解终端中的EOF行为首先,我正在使用Windows和GCC编译器“以防万一”其次,我不是要重定向来自文件的输入...我的问题是关于来自Windows控制台的输入我的问题:我读到EOF关闭了输入流,在EOF之后你不能从标准输入读取...这对我来说不是这种情况!即使在我明确输入Enter-Ctrl-Z-Enter之后,如果我执行另一个getchar()调用,它也会从标准输入中读取...例如:intc=0;charstr[100]={0};printf("Typeinastringwithspacessosomecharswouldremaini

windows - Powershell 脚本 : Can't read return value of executed program

我正在使用PowerShell运行一个脚本,该脚本执行wget以获取网页(一个简单的数据库导入脚本)并分析其输出(错误消息或“OK”)。我正在使用thispreviousquestion的答案中的代码我的。$a=c:\path_to_wget\wget.exe--quiet-O-"http://www.example.com/import_db"$rc=$a.CompareTo("OK")exit$rc当wget操作的结果是404-并且wget可能返回错误级别1或127-我从PowerShell收到以下错误消息:Youcannotcallamethodonanull-valuedexp

c# - 在内存中操作文本文件的最佳方法 : read as byte[] first? 读取为 File.ReadAllText() 然后另存为二进制文件?

我需要更改内存中的文件,目前我使用文件流和二进制读取器将文件读入内存中的byte[]。我想知道更改内存中的文件、将byte[]转换为字符串、进行更改并执行Encoding.GetBytes()的最佳方法是什么?或者首先使用File.ReadAllText()然后使用Encoding.GetBytes()将文件作为字符串读取?或者任何方法都可以在没有警告的情况下起作用?有什么特别的方法吗?我需要用额外的字符或替换字符串替换文件中的特定文本,大约有100,000个文件。可靠性优于效率。文件是类似于HTML的文本,而不是二进制文件。 最佳答案