Better handling of detecting csv separator.

This commit is contained in:
Deukhoofd 2021-09-07 18:38:19 +02:00
parent ee85947c4c
commit d7beb77f1d
Signed by: Deukhoofd
GPG Key ID: F63E044490819F6F
1 changed files with 9 additions and 3 deletions

View File

@ -12,6 +12,10 @@ static bool IsKeyValid(const std::string_view & key){
return true; return true;
} }
const char PossibleSeparators[] = {
',', ';', '|', '\t', ':'
};
void LocalizationFile::LoadFile(const std::filesystem::path& path) { void LocalizationFile::LoadFile(const std::filesystem::path& path) {
if (!std::filesystem::exists(path)) { if (!std::filesystem::exists(path)) {
std::stringstream ss; std::stringstream ss;
@ -31,9 +35,11 @@ void LocalizationFile::LoadFile(const std::filesystem::path& path) {
while (std::getline(file, line)) { while (std::getline(file, line)) {
if (firstLine) { if (firstLine) {
firstLine = false; firstLine = false;
if (line.substr(0, 4) == "sep=") { for (auto& s :PossibleSeparators) {
sep = line[4]; if (line.find(s) != std::string::npos){
continue; sep = s;
break;
}
} }
} }
std::string key; std::string key;