diff --git a/src/core/Utils.mjs b/src/core/Utils.mjs index eae86374..c622ed62 100755 --- a/src/core/Utils.mjs +++ b/src/core/Utils.mjs @@ -1288,8 +1288,8 @@ class Utils { * @param {string} token * @returns {string} */ - static charRep(token) { - return { + static charRep(token, data="Auto") { + const charMap = { "Space": " ", "Percent": "%", "Comma": ",", @@ -1304,7 +1304,11 @@ class Utils { "\\x": "\\x", "Nothing (separate chars)": "", "None": "", - }[token]; + }; + if(token === "Auto" && data !== "Auto") { + return Object.values(charMap).find(char => data.includes(char)); + } + return charMap[token]; } diff --git a/src/core/lib/Decimal.mjs b/src/core/lib/Decimal.mjs index a140fd4e..a23a52b2 100644 --- a/src/core/lib/Decimal.mjs +++ b/src/core/lib/Decimal.mjs @@ -24,7 +24,7 @@ import Utils from "../Utils.mjs"; * fromDecimal("10:20:30", "Colon"); */ export function fromDecimal(data, delim="Auto") { - delim = Utils.charRep(delim); + delim = Utils.charRep(delim, data); const output = []; let byteStr = data.split(delim); if (byteStr[byteStr.length-1] === "")