23#include <osl/thread.h>
31 aFieldSeps ( OUString(
';') ),
32 bMergeFieldSeps ( false ),
33 bRemoveSpace ( false ),
34 bQuotedFieldAsText(false),
35 bDetectSpecialNumber(false),
36 bEvaluateFormulas(true),
37 bSkipEmptyCells(false),
40 cTextSep ( cDefaultTextSep ),
41 eCharSet ( osl_getThreadTextEncoding() ),
43 bCharSetSystem ( false ),
50 sal_uInt16 nInfoCount =
static_cast< sal_uInt16
>( rDataVec.size() );
53 for( sal_uInt16 nIx = 0; nIx < nInfoCount; ++nIx )
62 if ( rSepNums.empty() )
65 OUStringBuffer aFieldSeps;
71 o_bMergeFieldSeps =
true;
81 return aFieldSeps.makeStringAndClear();
89 sal_Int32
nPos = rString.empty() ? -1 : 0;
129 for (sal_Int32 nInfo=0; nInfo<nInfoCount; ++nInfo)
199 OUStringBuffer aOutStr;
209 for (sal_Int32
i=0;
i<nLen;
i++)
223 aOutStr.append(
"," + OUString::number(
cTextSep) +
",");
232 aOutStr.append(
"," + OUString::number(
nStartRow) +
",");
235 for (
size_t nInfo=0; nInfo<
mvColStart.size(); nInfo++)
239 aOutStr.append(OUString::number(
mvColStart[nInfo]) +
250 OUString::number(
static_cast<sal_uInt16
>(
eLang)) +
"," +
266 return aOutStr.makeStringAndClear();
constexpr std::u16string_view pStrFix
static OUString lcl_decodeSepString(std::u16string_view rSepNums, bool &o_bMergeFieldSeps)
constexpr std::u16string_view pStrMrg
void SetColumnInfo(const ScCsvExpDataVec &rDataVec)
static sal_Unicode GetWeightedFieldSep(const OUString &rFieldSeps, bool bDecodeNumbers)
From the import field separators obtain the one most likely to be used for export,...
bool bDetectSpecialNumber
rtl_TextEncoding eCharSet
void ReadFromString(std::u16string_view rString)
std::vector< sal_uInt8 > mvColFormat
OUString WriteToString() const
std::vector< sal_Int32 > mvColStart
static rtl_TextEncoding GetCharsetValue(std::u16string_view rCharSet)
static OUString GetCharsetString(rtl_TextEncoding eVal)
::std::vector< ScCsvExpData > ScCsvExpDataVec
sal_Int32 getTokenCount(std::string_view rIn, char cTok)
sal_Int32 toInt32(std::u16string_view str, sal_Int16 radix=10)
std::basic_string_view< charT, traits > getToken(std::basic_string_view< charT, traits > sv, charT delimiter, std::size_t &position)