Skip to content

Parsers

Csv Struct Parser

The default parser included into the plugin has three key features:

  1. Struct Transformation:
    Converts "Outer.Inner.Value" columns into Unreal Engine-compatible complex structs.

    Note

    You can still use "Outer" directly with the classic structured value "(Inner = (Value="value"))". The additional fields will be combined with the original column, possibly overwriting them if they collide.

  2. Existence Check:
    Verifies object existence during import, enhancing project reliability.

  3. Data Cleanup:
    Clears irrelevant information without designated column names, used eventually for formulas or additional cell processing.

Default Csv Parser


Default Csv Parser

Create Parser

Warning

All this code needs to be added to an editor module, or you could face compilation issues during shipping.

  1. Create a child class from UCsvBaseParser and override ParseCsv to implement the main logic of the parser.

    UCLASS()
    class UMyCsvParser : public UCsvBaseParser {
        GENERATED_BODY()
    
    public:
        virtual UCsvWrapper* ParseCsv(UCsvWrapper* InCsv) override;
    };
    

  2. Inside the ParseCsv, you have to implement the main logic of your parser.

    UCsvWrapper* UMyCsvParser::ParseCsv(UCsvWrapper* InCsv) {
        UCsvWrapper* OutCsv = NewObject<UCsvWrapper>();
    
        // Fill and elaborate OutCsv
    
        return OutCsv;
    }
    

See CsvWrapper to see how to manipulate a CsvWrapper