checkSepHint method
Check for Excel sep=X hint on first line.
Returns (remaining string, detected delimiter or null).
Implementation
(String, String?) checkSepHint(String input) {
if (input.length < 5) return (input, null);
// Look for sep=X followed by newline
if (input.startsWith('sep=')) {
final newlineIdx = input.indexOf('\n');
final crIdx = input.indexOf('\r');
final endIdx =
crIdx >= 0 && crIdx < (newlineIdx < 0 ? input.length : newlineIdx)
? crIdx
: newlineIdx;
if (endIdx > 4) {
final delimiter = input.substring(4, endIdx);
var remaining = input.substring(endIdx);
// Skip the newline(s)
if (remaining.startsWith('\r\n')) {
remaining = remaining.substring(2);
} else if (remaining.startsWith('\r') || remaining.startsWith('\n')) {
remaining = remaining.substring(1);
}
return (remaining, delimiter);
}
}
return (input, null);
}