converter/src/app/converter/utf8decoder.ts

25 lines
614 B
TypeScript
Raw Normal View History

2017-04-15 19:04:49 +02:00
import {Converter} from './converter';
import {NativeLibraryWrapperService} from '../nativelibrarywrapper.service';
export class UTF8Decoder implements Converter {
2017-03-15 00:09:57 +01:00
constructor(private nativeLibraryWrapperService: NativeLibraryWrapperService) {
}
getDisplayname(): string {
2017-04-15 19:04:49 +02:00
return 'Decode UTF-8';
}
getId(): string {
2017-04-15 19:04:49 +02:00
return 'decodeutf8';
}
convert(input: string): string {
try {
return this.nativeLibraryWrapperService.utf8.decode(input);
} catch (error) {
2017-04-15 19:04:49 +02:00
throw new Error('The input can not be interpreted a valid UTF-8 encoded string. May be corrupt?');
}
}
}