相关疑难解决方法(0)

使用XSLT将XML转换为CSV

我有以下XML文档:

<projects>
  <project>
   <name>Shockwave</name> 
   <language>Ruby</language> 
   <owner>Brian May</owner> 
   <state>New</state> 
   <startDate>31/10/2008 0:00:00</startDate> 
  </project>
  <project>
   <name>Other</name> 
   <language>Erlang</language> 
   <owner>Takashi Miike</owner> 
   <state> Canceled </state> 
   <startDate>07/11/2008 0:00:00</startDate> 
  </project>
...
Run Code Online (Sandbox Code Playgroud)

我想从转换(XSLT)结果中得到这个结果:

Shockwave,Ruby,Brian May,New,31/10/2008 0:00:00
Other,Erlang,Takashi Miike,Cancelled,07/11/2008 0:00:00
Run Code Online (Sandbox Code Playgroud)

有谁知道XSLT实现这一目标?我正在使用.net以防万一.

xml csv xslt

72
推荐指数
4
解决办法
12万
查看次数

OneOfAType容器 - 在容器中存储每个给定类型 - 我是不是在这里?

我有一个有趣的问题,在我的一种基于传递的编译器中出现了.每个传递都不知道其他传递,并且在命令模式链之后,一个公共对象沿着链传递.

传递的对象是对文件的引用.

现在,在其中一个阶段中,人们可能希望关联大量数据,例如该文件的SHA512哈希,这需要合理的时间来计算.但是,由于该块数据仅用于该特定情况,因此我不希望所有文件引用都需要为该SHA512保留空间.但是,我也不希望其他传递必须一遍又一遍地重新计算SHA512哈希.例如,某人可能只接受与给定SHA512列表匹配的文件,但是当文件引用到达链的末尾时,或者他们想要两者或者...... .etc时,他们不希望打印该值.

我需要的是某种容器,它只包含给定类型中的一种.如果容器不包含该类型,则需要创建该类型的实例并以某种方式存储它.它基本上是一个字典,其类型是用来查找的东西.

这是我到目前为止所获得的,相关的位是FileData::Get<t>方法:

class FileData;
// Cache entry interface
struct FileDataCacheEntry
{
    virtual void Initalize(FileData&)
    {
    }
    virtual ~FileDataCacheEntry()
    {
    }
};

// Cache itself
class FileData
{
    struct Entry
    {
        std::size_t identifier;
        FileDataCacheEntry * data;
        Entry(FileDataCacheEntry *dataToStore, std::size_t id)
            : data(dataToStore), identifier(id)
        {
        }
        std::size_t GetIdentifier() const
        {
            return identifier;
        }
        void DeleteData()
        {
            delete data;
        }
    };
    WindowsApi::ReferenceCounter refCount;
    std::wstring fileName_;
    std::vector<Entry> cache;
public:
    FileData(const std::wstring& fileName) : fileName_(fileName)
    {
    }
    ~FileData()
    { …
Run Code Online (Sandbox Code Playgroud)

c++

5
推荐指数
1
解决办法
629
查看次数

标签 统计

c++ ×1

csv ×1

xml ×1

xslt ×1