小编Ver*_*ica的帖子

使用R的xmlEventParse存储特定的XML节点值

我有一个大的XML文件,我需要在R中使用xmlEventParse进行解析.遗憾的是,在线示例比我需要的更复杂,我只想标记匹配的节点标记来存储匹配的节点文本(非属性),每个文本都在一个单独的列表中,请参阅下面代码中的注释:

library(XML)
z <- xmlEventParse(
    "my.xml", 
    handlers = list(
        startDocument   =   function() 
        {
                cat("Starting document\n")
        },  
        startElement    =   function(name,attr) 
        {
                if ( name == "myNodeToMatch1" ){
                    cat("FLAG Matched element 1\n")
                }
                if ( name == "myNodeToMatch2" ){
                    cat("FLAG Matched element 2\n")
                }
        },
        text            =   function(text) {
                if ( # Matched element 1 .... )
                    # Store text in element 1 list
                if ( # Matched element 2 .... )
                    # Store text in element 2 …
Run Code Online (Sandbox Code Playgroud)

sax r xml-parsing

7
推荐指数
1
解决办法
2820
查看次数

下载与主题匹配的 GitHub 存储库列表?

有没有办法下载与 GitHub 主题匹配的项目列表?例如,如果我写:

https://github.com/topics/haskell

在 Web 浏览器中,返回包含与 Haskell 相关的 GitHub 项目的页面。我阅读了他们的 GitHub API,但他们似乎没有实现该功能:https : //developer.github.com/v3/

此外端点https://api.github.com/似乎不包含任何选项。我得到的像https://api.github.com/topics/haskell这样的尝试是:

{
  "message": "Not Found",
  "documentation_url": "https://developer.github.com/v3"
}
Run Code Online (Sandbox Code Playgroud)

git command-line github github-api

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

fread或fwrite给出“错误的文件编号”

我在Windows 8.1中使用MinGW,并且我有一个原始数字的输入文本文件(每行一个),我想将它们以二进制形式写入新的二进制文件中。该示例在编译时不会出现以下问题:

gcc -pedantic -Os -c my_code.c -o my_code.exe
Run Code Online (Sandbox Code Playgroud)

但输出是

$ my_code.exe
sh: ./my_code.exe: Bad file number
Run Code Online (Sandbox Code Playgroud)

这是我写的代码:

#include<stdio.h>

int main ()
{
    FILE *fp;
    FILE *prob;
    int length;
    char buffer[30];

   // Open file containing numbers
    if ((prob = fopen("raw_numbers.txt","r")) == NULL)
    {
        printf("Could not open raw_numbers.txt\n");
        exit(1);
    }

    /* Create output binary file */
    fp = fopen( "file.bin" , "w" );

    while( ! feof(prob) )
    {
        fgets(buffer, sizeof(buffer), prob);
        fwrite((const void*) & buffer, 1, sizeof(buffer), fp);
    }

    fclose(prob);
    fclose(fp); …
Run Code Online (Sandbox Code Playgroud)

c gcc fwrite fgets

0
推荐指数
1
解决办法
486
查看次数

标签 统计

c ×1

command-line ×1

fgets ×1

fwrite ×1

gcc ×1

git ×1

github ×1

github-api ×1

r ×1

sax ×1

xml-parsing ×1