But this would make the basic spreadsheet functionality depend on LCL. It the worth the little convenience of not calling AnsiToUTF8/TUF8ToAnsi? Beyond that, there are other TFileStreams spread throughout the package: fpolebasic.pas, fpolestorage.pas, xlsooxml.pas, fpcsvdocument.pas, fpsopendocument.pas, fpsreaderwriter.pas, fpsstreams.pas, fpszipper.pas, fpsxmlcommon.pas