removed field_count in construct function, and then added WriteHeader in CSVOutput/CSVOutputStream

This commit is contained in:
2023-07-31 17:13:44 +08:00
parent cfb772cb55
commit 1f8d32087e
3 changed files with 26 additions and 19 deletions

View File

@@ -43,6 +43,10 @@ namespace hgl
void WriteStringList(const std::initializer_list<String<T>> &sl){return csv->WriteStringList(sl);}
void WriteStringList(const std::initializer_list<const T *> &sl){return csv->WriteStringList(sl);}
void WriteHeader(const StringList<T> &sl){csv->WriteHeader(sl);}
void WriteHeader(const std::initializer_list<String<T>> &sl){csv->WriteHeader(sl);}
void WriteHeader(const std::initializer_list<const T *> &sl){csv->WriteHeader(sl);}
template<typename I>
void WriteInteger(const I &value){csv->WriteInteger(value);}
@@ -50,14 +54,14 @@ namespace hgl
void WriteFloat(const F &value,const uint frac){csv->WriteFloat(value,frac);}
};//template<typename T> class CSVOutputStream
template<typename T> inline CSVOutputStream<T> *CreateCSVOutputToStream(io::OutputStream *os,io::TextOutputStream *tos,const uint field_count,const T fields_terminated_char=T(','),const T enclosed_char=T('"'))
template<typename T> inline CSVOutputStream<T> *CreateCSVOutputToStream(io::OutputStream *os,io::TextOutputStream *tos,const T fields_terminated_char=T(','),const T enclosed_char=T('"'))
{
CSVOutput<T> *csv=new CSVOutput<T>(tos,field_count,fields_terminated_char,enclosed_char);
CSVOutput<T> *csv=new CSVOutput<T>(tos,fields_terminated_char,enclosed_char);
return(new CSVOutputStream<T>(os,tos,csv));
}
CSVOutputStream<u8char> *CreateCSVOutputToUTF8File(const OSString &filename,const uint field_count,const u8char fields_terminated_char=U8_TEXT(','),const u8char enclosed_char=U8_TEXT('"'));
CSVOutputStream<u16char> *CreateCSVOutputToUTF16LEFile(const OSString &filename,const uint field_count,const u16char fields_terminated_char=U16_TEXT(','),const u16char enclosed_char=U16_TEXT('"'));
CSVOutputStream<u8char> *CreateCSVOutputToUTF8File(const OSString &filename,const u8char fields_terminated_char=U8_TEXT(','),const u8char enclosed_char=U8_TEXT('"'));
CSVOutputStream<u16char> *CreateCSVOutputToUTF16LEFile(const OSString &filename,const u16char fields_terminated_char=U16_TEXT(','),const u16char enclosed_char=U16_TEXT('"'));
}//namespace util
}//namespace hgl