标签: fwrite

使cURL在收到数据时写入数据

我有以下PHP代码,我在这里找到:

function download_xml()
{
    $url = 'http://tv.sygko.net/tv.xml';

    $ch = curl_init($url);
    $timeout = 5;

    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);

    $data = curl_exec($ch);

    echo("curl_exec was succesful"); //This never gets called

    curl_close($ch);
    return $data;
}

$my_file = 'tvdata.xml';
$handle = fopen($my_file, 'w');
$data = download_xml();
fwrite($handle, $data);
Run Code Online (Sandbox Code Playgroud)

我要做的是在指定的URL下载xml并将其保存到磁盘.然而,一旦大约80%完成停止,并且在echo通话后从未到达curl_exec通话.我不确定为什么,但我相信这是因为内存不足.因此,我想问一下,每次下载4kb时,是否可以将curl写入文件.如果这是不可能的,有人知道一种方法来获取存储在url下的xml文件下载并使用php存储在我的磁盘上吗?

非常感谢,BEN.

编辑:这是现在的代码,它不起作用.它将数据写入文件,但仍然只占文档的80%左右.也许不是因为它超过记忆而是其他原因?我真的不敢相信将文件从URL复制到光盘很难...

    <?

$url = 'http://tv.sygko.net/tv.xml';
$my_file = fopen('tvdata.xml', 'w');

$ch = curl_init($url);
$timeout = 300;

curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FILE, $my_file); …
Run Code Online (Sandbox Code Playgroud)

php curl fwrite

2
推荐指数
1
解决办法
1万
查看次数

fwrite不会破坏这条线

我写的是这样的:

 $fh = fopen('public/newsletter.txt', 'w');
 foreach($entries as $row) {
        fwrite($fh, 'e-mail\n');
        fwrite($fh, $row->new_email . ';');
 }
 fclose($fh);
Run Code Online (Sandbox Code Playgroud)

期待它

email
email@example.com;
Run Code Online (Sandbox Code Playgroud)

但我得到了

e-mail\nemail@example.com;
Run Code Online (Sandbox Code Playgroud)

我该如何解决?

php string newline fwrite

2
推荐指数
1
解决办法
4124
查看次数

如何使用fwrite写入数据0xf0f0f0f0

我需要使用fwrite将分隔符= 0xf0f0f0f0写入二进制文件.它需要以在UNIX上的xxd中查看时0xf0f0f0f0出现在文件开头的方式完成.我现在这样做,

  unsigned int delim[1];
  delim[1] = 0xf0f0f0f0;
  fwrite(delim, 4, 1, destination);
Run Code Online (Sandbox Code Playgroud)

但它显然无法正常工作,因为xxd在文件的开头显示:

  0000000: 90c9 49ac
Run Code Online (Sandbox Code Playgroud)

c binary fwrite

2
推荐指数
2
解决办法
344
查看次数

如何清除准备好fwrite的文本文件

我有一个用fwrite写的文本文件,我如何删除这个文本文件的所有内容,以便我可以写一个新的.我试图找到另一个功能,但没有运气.

我正在使用的示例代码,我想在输入此信息之前清除它:

$string = ', {"key": "'.$info['Name'].'", "value": "'.$info['Name'].'"}';
    $fp = fopen('data_old.txt', 'a');
    fwrite($fp, $string);
    fclose($fp);
Run Code Online (Sandbox Code Playgroud)

php fwrite

2
推荐指数
1
解决办法
2万
查看次数

如何在C中将树数据写入文件?

我在寻找类似的问题,但没有找到解决方案。我的结构类似于带有两个以上节点的树。我也有一个指向根的指针。

typedef struct tree
{
   char *name;
   struct tree *children
}TREE;
Run Code Online (Sandbox Code Playgroud)

我想将此数据写入文件,但只是感到困惑,所以希望获得一些帮助

我以为使用:

int writeData(TREE *root , char *filename){

    FILE *f = NULL;
    int numWritten = 0;

fopen_s(&f , filename, "w+" );
fwrite(root , sizeof(TREE) , ??? , f);
Run Code Online (Sandbox Code Playgroud)

}

我不知道该写些什么,怎么办?如果我在每个元素上都有孩子,那么我愿意把它们全部扔掉-我该怎么办?

c tree serialization fwrite data-structures

2
推荐指数
1
解决办法
1635
查看次数

无法使用fwrite将int写入文件

我正在尝试格式化我的键盘输出,以便显示时间:

        t = time(0);
        now = localtime(&t);


        if(now->tm_min != prevM && now->tm_hour != prevH)
        {
            prevM = now->tm_min;
            prevH = now->tm_hour;

            fwrite("[", 1, sizeof(WCHAR), keylog);
            fwrite(&prevH, 1, sizeof(int), keylog);
            fwrite("]", 1, sizeof(WCHAR), keylog);
            fwrite(" ", 1, sizeof(WCHAR), keylog);
            fflush(keylog);
        }
Run Code Online (Sandbox Code Playgroud)

但是在我的文件中写了"[DLE NUL]"而不是可读数字,其中DLENUL是问号.

如何编写可读数字?

c fwrite

2
推荐指数
1
解决办法
3941
查看次数

将文本文件的内容追加到C++中的另一个文件中

如何打开文本文件并将其所有行附加到C++中的另一个文本文件?我主要找到解决方案,用于从文件到字符串的单独读取,以及从字符串写入文件.这可以优雅地结合在一起吗?

并不总是给出两个文件都存在.访问每个文件时应该有一个bool返回.

如果这已经偏离主题,我很抱歉:将文本内容附加到文件中是否存在冲突,这意味着多个程序可以同时执行此操作(行的顺序无关紧要)?如果不是,什么是(原子)替代品?

c++ file atomic append fwrite

2
推荐指数
1
解决办法
6513
查看次数

如何在python中写入没有括号的文件

当我写文件我的结果:

output=knew[i][0],knew[i][1], knew[i][2],eigenval[k],group[i]
value=str(output)
o.write(value+'\n')
Run Code Online (Sandbox Code Playgroud)

我明白了:

(0.05, 0.05, 0.166667, -0.8513056, 0.9881956035137526)
(0.05, 1.05, 0.166667, -0.8513056, 0.011652226336523394)
(0.05, -0.9500000000000002, 0.166667, -0.8513056, 0.00015217014972403685)
Run Code Online (Sandbox Code Playgroud)

如何写入文件,以便它不添加括号?

python fwrite

2
推荐指数
1
解决办法
3574
查看次数

你可以通过过去的EOF来创建未定义的数据吗?

如果您使用fseek超过文件的末尾然后在EOF之后附加数据,那么EOF和您编写的内容之间的数据是否未定义?

例如,在下面的代码中,写入的文件中是否会有10个字节的未定义数据,因为randomLengthPastEOF

unsigned char *someText= "ExampleText";
int length = 11;
int randomLengthPastEOF  = 10;

FILE *output = fopen("/Example/FilePath", "wb");
fseek(input, randomLengthPastEOF ,SEEK_END);
fwrite(someText, 1, length, output);
Run Code Online (Sandbox Code Playgroud)

我找不到任何可能发生的地方的参考,所以我认为它是未定义的.

c c++ fseek fwrite

2
推荐指数
2
解决办法
93
查看次数

c语言:fwrite什么都不做

{
FILE* f1 = fopen("C:\\num1.bin", "wb+");//it will create a new file 
int A[] = { 1,3,6,28 }; //int arr
fwrite(A, sizeof(A), 1, f1); //should insert the A array to the file
}
Run Code Online (Sandbox Code Playgroud)

我确实看到了文件但是即使在fwrite之后,文件仍然是空的(0字节)有没有人知道为什么?

c fwrite

2
推荐指数
2
解决办法
268
查看次数

标签 统计

fwrite ×10

c ×5

php ×3

c++ ×2

append ×1

atomic ×1

binary ×1

curl ×1

data-structures ×1

file ×1

fseek ×1

newline ×1

python ×1

serialization ×1

string ×1

tree ×1