Use U8String/U16String/WString instead of UTF8String/UTF16String/WideString
This commit is contained in:
@@ -172,37 +172,37 @@ namespace hgl
|
||||
virtual bool ReadUTF16BEChars(u16char *,uint); ///<读取utf16-be格式字符阵列到u16char *
|
||||
|
||||
//32bit str-length
|
||||
virtual bool ReadUTF8String (char *, uint max_len=0); ///<读取utf8格式字符串(前缀四字节的字符串字节长度)
|
||||
virtual bool ReadUTF8String (UTF8String &, uint max_len=0); ///<读取utf8格式字符串(前缀四字节的字符串字节长度)
|
||||
virtual bool ReadUTF8String (UTF16String &, uint max_len=0); ///<读取utf8格式字符串(前缀四字节的字符串字节长度)
|
||||
virtual bool ReadU8String (char *, uint max_len=0); ///<读取utf8格式字符串(前缀四字节的字符串字节长度)
|
||||
virtual bool ReadU8String (U8String &, uint max_len=0); ///<读取utf8格式字符串(前缀四字节的字符串字节长度)
|
||||
virtual bool ReadU8String (U16String &, uint max_len=0); ///<读取utf8格式字符串(前缀四字节的字符串字节长度)
|
||||
|
||||
virtual bool ReadUTF16LEString (u16char *, uint max_len=0);
|
||||
virtual bool ReadUTF16BEString (u16char *, uint max_len=0);
|
||||
|
||||
virtual bool ReadUTF16LEString (UTF16String &, uint max_len=0); ///<读取utf16-le格式字符串(前缀四字节的字符串字节长度)
|
||||
virtual bool ReadUTF16BEString (UTF16String &, uint max_len=0); ///<读取utf16-be格式字符串(前缀四字节的字符串字节长度)
|
||||
virtual bool ReadUTF16LEString (U16String &, uint max_len=0); ///<读取utf16-le格式字符串(前缀四字节的字符串字节长度)
|
||||
virtual bool ReadUTF16BEString (U16String &, uint max_len=0); ///<读取utf16-be格式字符串(前缀四字节的字符串字节长度)
|
||||
|
||||
//16bit str-length
|
||||
virtual bool ReadUTF8ShortString (char *, uint max_len=0);
|
||||
virtual bool ReadUTF8ShortString (UTF8String &, uint max_len=0); ///<读取utf8格式字符串(前缀2字节的字符串字节长度)
|
||||
virtual bool ReadUTF8ShortString (UTF16String &, uint max_len=0); ///<读取utf8格式字符串(前缀2字节的字符串字节长度)
|
||||
virtual bool ReadUTF8ShortString (U8String &, uint max_len=0); ///<读取utf8格式字符串(前缀2字节的字符串字节长度)
|
||||
virtual bool ReadUTF8ShortString (U16String &, uint max_len=0); ///<读取utf8格式字符串(前缀2字节的字符串字节长度)
|
||||
|
||||
virtual bool ReadUTF16LEShortString (u16char *, uint max_len=0);
|
||||
virtual bool ReadUTF16BEShortString (u16char *, uint max_len=0);
|
||||
|
||||
virtual bool ReadUTF16LEShortString (UTF16String &, uint max_len=0); ///<读取utf16-le格式字符串(前缀2字节的字符串字节长度)
|
||||
virtual bool ReadUTF16BEShortString (UTF16String &, uint max_len=0); ///<读取utf16-be格式字符串(前缀2字节的字符串字节长度)
|
||||
virtual bool ReadUTF16LEShortString (U16String &, uint max_len=0); ///<读取utf16-le格式字符串(前缀2字节的字符串字节长度)
|
||||
virtual bool ReadUTF16BEShortString (U16String &, uint max_len=0); ///<读取utf16-be格式字符串(前缀2字节的字符串字节长度)
|
||||
|
||||
//8bit str-length
|
||||
virtual bool ReadUTF8TinyString (char *, uint max_len=0);
|
||||
virtual bool ReadUTF8TinyString (UTF8String &, uint max_len=0); ///<读取utf8格式字符串(前缀1字节的字符串字节长度)
|
||||
virtual bool ReadUTF8TinyString (UTF16String &, uint max_len=0); ///<读取utf8格式字符串(前缀1字节的字符串字节长度)
|
||||
virtual bool ReadUTF8TinyString (U8String &, uint max_len=0); ///<读取utf8格式字符串(前缀1字节的字符串字节长度)
|
||||
virtual bool ReadUTF8TinyString (U16String &, uint max_len=0); ///<读取utf8格式字符串(前缀1字节的字符串字节长度)
|
||||
|
||||
virtual bool ReadUTF16LETinyString (u16char *, uint max_len=0);
|
||||
virtual bool ReadUTF16BETinyString (u16char *, uint max_len=0);
|
||||
|
||||
virtual bool ReadUTF16LETinyString (UTF16String &, uint max_len=0); ///<读取utf16-le格式字符串(前缀1字节的字符串字节长度)
|
||||
virtual bool ReadUTF16BETinyString (UTF16String &, uint max_len=0); ///<读取utf16-be格式字符串(前缀1字节的字符串字节长度)
|
||||
virtual bool ReadUTF16LETinyString (U16String &, uint max_len=0); ///<读取utf16-le格式字符串(前缀1字节的字符串字节长度)
|
||||
virtual bool ReadUTF16BETinyString (U16String &, uint max_len=0); ///<读取utf16-be格式字符串(前缀1字节的字符串字节长度)
|
||||
};//class DataInputStream
|
||||
|
||||
template<> bool inline DataInputStream::ReadNumber<int8>(int8 &value){return ReadInt8(value);}
|
||||
|
@@ -138,52 +138,52 @@ namespace hgl
|
||||
template<typename T> bool WriteUTF16LEChars (const String<T> &str){return WriteUTF16LEChars (str.c_str(),str.Length());}
|
||||
template<typename T> bool WriteUTF16BEChars (const String<T> &str){return WriteUTF16BEChars (str.c_str(),str.Length());}
|
||||
|
||||
template<typename T> bool WriteUTF8StringWithLength (const u8char *str,const uint length);
|
||||
template<typename T> bool WriteUTF8StringWithLength (const UTF16String &str);
|
||||
template<typename T> bool WriteU8StringWithLength (const u8char *str,const uint length);
|
||||
template<typename T> bool WriteU8StringWithLength (const U16String &str);
|
||||
|
||||
template<uchar C,typename T> bool WriteUTF16StringWithLength(const u16char *str,const uint len);
|
||||
template<uchar C,typename T> bool WriteU16StringWithLength(const u16char *str,const uint len);
|
||||
|
||||
public:
|
||||
|
||||
//32 bit length
|
||||
bool WriteUTF8String (const u8char *str,uint length); ///<按utf8格式写入字符串(前置4字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF8String (const u8char *str ); ///<按utf8格式写入字符串(前置4字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF8String (const UTF8String &str ); ///<按utf8格式写入字符串(前置4字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF8String (const UTF16String &str ); ///<按utf8格式写入字符串(前置4字节字符串长度,再写入字符阵列)
|
||||
bool WriteU8String (const u8char *str,uint length); ///<按utf8格式写入字符串(前置4字节字符串长度,再写入字符阵列)
|
||||
bool WriteU8String (const u8char *str ); ///<按utf8格式写入字符串(前置4字节字符串长度,再写入字符阵列)
|
||||
bool WriteU8String (const U8String &str ); ///<按utf8格式写入字符串(前置4字节字符串长度,再写入字符阵列)
|
||||
bool WriteU8String (const U16String &str ); ///<按utf8格式写入字符串(前置4字节字符串长度,再写入字符阵列)
|
||||
|
||||
bool WriteUTF16LEString (const u16char *str,uint len); ///<按utf16-le格式写入字符串(前置4字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16BEString (const u16char *str,uint len); ///<按utf16-be格式写入字符串(前置4字节字符串长度,再写入字符阵列)
|
||||
|
||||
bool WriteUTF16LEString (const UTF16String &str ); ///<按utf16-le格式写入字符串(前置4字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16BEString (const UTF16String &str ); ///<按utf16-be格式写入字符串(前置4字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16LEString (const U16String &str ); ///<按utf16-le格式写入字符串(前置4字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16BEString (const U16String &str ); ///<按utf16-be格式写入字符串(前置4字节字符串长度,再写入字符阵列)
|
||||
|
||||
bool WriteUTF16LEString (const u16char *str ); ///<按utf16-le格式写入字符串(前置4字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16BEString (const u16char *str ); ///<按utf16-be格式写入字符串(前置4字节字符串长度,再写入字符阵列)
|
||||
|
||||
bool WriteUTF16LEString (const UTF8String &str ){return WriteUTF16LEString(to_u16(str));} ///<按utf16-le格式写入字符串(前置4字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16BEString (const UTF8String &str ){return WriteUTF16BEString(to_u16(str));} ///<按utf16-be格式写入字符串(前置4字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16LEString (const U8String &str ){return WriteUTF16LEString(to_u16(str));} ///<按utf16-le格式写入字符串(前置4字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16BEString (const U8String &str ){return WriteUTF16BEString(to_u16(str));} ///<按utf16-be格式写入字符串(前置4字节字符串长度,再写入字符阵列)
|
||||
|
||||
bool WriteAnsiString (const char *str,uint length){return WriteUTF8String((u8char *)str,length);}
|
||||
bool WriteAnsiString (const char *str ){return WriteUTF8String((u8char *)str);}
|
||||
bool WriteAnsiString (const AnsiString &str ){return WriteUTF8String((u8char *)str.c_str(),str.Length());}
|
||||
bool WriteAnsiString (const char *str,uint length){return WriteU8String((u8char *)str,length);}
|
||||
bool WriteAnsiString (const char *str ){return WriteU8String((u8char *)str);}
|
||||
bool WriteAnsiString (const AnsiString &str ){return WriteU8String((u8char *)str.c_str(),str.Length());}
|
||||
|
||||
//16 bit length
|
||||
bool WriteUTF8ShortString (const u8char *str,uint length); ///<按utf8格式写入字符串(前置2字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF8ShortString (const u8char *str ); ///<按utf8格式写入字符串(前置2字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF8ShortString (const UTF8String &str ); ///<按utf8格式写入字符串(前置2字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF8ShortString (const UTF16String &str ); ///<按utf8格式写入字符串(前置2字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF8ShortString (const U8String &str ); ///<按utf8格式写入字符串(前置2字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF8ShortString (const U16String &str ); ///<按utf8格式写入字符串(前置2字节字符串长度,再写入字符阵列)
|
||||
|
||||
bool WriteUTF16LEShortString(const u16char *str,uint len); ///<按utf16-le格式写入字符串(前置2字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16BEShortString(const u16char *str,uint len); ///<按utf16-be格式写入字符串(前置2字节字符串长度,再写入字符阵列)
|
||||
|
||||
bool WriteUTF16LEShortString(const UTF16String &str ); ///<按utf16-le格式写入字符串(前置2字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16BEShortString(const UTF16String &str ); ///<按utf16-be格式写入字符串(前置2字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16LEShortString(const U16String &str ); ///<按utf16-le格式写入字符串(前置2字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16BEShortString(const U16String &str ); ///<按utf16-be格式写入字符串(前置2字节字符串长度,再写入字符阵列)
|
||||
|
||||
bool WriteUTF16LEShortString(const u16char *str ); ///<按utf16-le格式写入字符串(前置2字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16BEShortString(const u16char *str ); ///<按utf16-be格式写入字符串(前置2字节字符串长度,再写入字符阵列)
|
||||
|
||||
bool WriteUTF16LEShortString(const UTF8String &str ){return WriteUTF16LEShortString(to_u16(str));} ///<按utf16-le格式写入字符串(前置2字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16BEShortString(const UTF8String &str ){return WriteUTF16BEShortString(to_u16(str));} ///<按utf16-be格式写入字符串(前置2字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16LEShortString(const U8String &str ){return WriteUTF16LEShortString(to_u16(str));} ///<按utf16-le格式写入字符串(前置2字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16BEShortString(const U8String &str ){return WriteUTF16BEShortString(to_u16(str));} ///<按utf16-be格式写入字符串(前置2字节字符串长度,再写入字符阵列)
|
||||
|
||||
bool WriteAnsiShortString (const char *str,uint length){return WriteUTF8ShortString((u8char *)str,length);}
|
||||
bool WriteAnsiShortString (const char *str ){return WriteUTF8ShortString((u8char *)str);}
|
||||
@@ -192,20 +192,20 @@ namespace hgl
|
||||
//8 bit length
|
||||
bool WriteUTF8TinyString (const u8char *str,uint length); ///<按utf8格式写入字符串(前置1字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF8TinyString (const u8char *str ); ///<按utf8格式写入字符串(前置1字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF8TinyString (const UTF8String &str ); ///<按utf8格式写入字符串(前置1字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF8TinyString (const UTF16String &str ); ///<按utf8格式写入字符串(前置1字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF8TinyString (const U8String &str ); ///<按utf8格式写入字符串(前置1字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF8TinyString (const U16String &str ); ///<按utf8格式写入字符串(前置1字节字符串长度,再写入字符阵列)
|
||||
|
||||
bool WriteUTF16LETinyString (const u16char *str,uint len); ///<按utf16-le格式写入字符串(前置1字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16BETinyString (const u16char *str,uint len); ///<按utf16-be格式写入字符串(前置1字节字符串长度,再写入字符阵列)
|
||||
|
||||
bool WriteUTF16LETinyString (const UTF16String &str ); ///<按utf16-le格式写入字符串(前置1字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16BETinyString (const UTF16String &str ); ///<按utf16-be格式写入字符串(前置1字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16LETinyString (const U16String &str ); ///<按utf16-le格式写入字符串(前置1字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16BETinyString (const U16String &str ); ///<按utf16-be格式写入字符串(前置1字节字符串长度,再写入字符阵列)
|
||||
|
||||
bool WriteUTF16LETinyString (const u16char *str ); ///<按utf16-le格式写入字符串(前置1字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16BETinyString (const u16char *str ); ///<按utf16-be格式写入字符串(前置1字节字符串长度,再写入字符阵列)
|
||||
|
||||
bool WriteUTF16LETinyString (const UTF8String &str ){return WriteUTF16LETinyString(to_u16(str));} ///<按utf16-le格式写入字符串(前置1字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16BETinyString (const UTF8String &str ){return WriteUTF16BETinyString(to_u16(str));} ///<按utf16-be格式写入字符串(前置1字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16LETinyString (const U8String &str ){return WriteUTF16LETinyString(to_u16(str));} ///<按utf16-le格式写入字符串(前置1字节字符串长度,再写入字符阵列)
|
||||
bool WriteUTF16BETinyString (const U8String &str ){return WriteUTF16BETinyString(to_u16(str));} ///<按utf16-be格式写入字符串(前置1字节字符串长度,再写入字符阵列)
|
||||
|
||||
bool WriteAnsiTinyString (const char *str,uint length){return WriteUTF8TinyString((u8char *)str,length);}
|
||||
bool WriteAnsiTinyString (const char *str ){return WriteUTF8TinyString((u8char *)str);}
|
||||
|
@@ -61,7 +61,7 @@ namespace hgl
|
||||
return in?in->ReadUTF16BEChars(wstr,count):false;
|
||||
}
|
||||
|
||||
bool readUTF (UTF16String &str)
|
||||
bool readUTF (U16String &str)
|
||||
{
|
||||
return in?in->ReadUTF8ShortString(str):false;
|
||||
}
|
||||
|
@@ -54,8 +54,8 @@ namespace hgl
|
||||
return out?out->WriteUTF16BEChars(wstr,count):false;
|
||||
}
|
||||
|
||||
bool writeUTF (const UTF8String &str){return out?out->WriteUTF8ShortString(str):false;}
|
||||
bool writeUTF (const UTF16String &str){return out?out->WriteUTF8ShortString(str):false;}
|
||||
bool writeUTF (const U8String &str){return out?out->WriteUTF8ShortString(str):false;}
|
||||
bool writeUTF (const U16String &str){return out?out->WriteUTF8ShortString(str):false;}
|
||||
};//class JavaOutputStream
|
||||
}//namespace io
|
||||
}//namespace hgl
|
||||
|
@@ -6,9 +6,9 @@
|
||||
|
||||
namespace hgl
|
||||
{
|
||||
int LoadStringFromText(UTF8String &full_text,const void *source_data,const int size,const CharSet &cs=UTF8CharSet); ///<加载一个原始文本块到UTF8String
|
||||
int LoadStringFromText(UTF16String &full_text,const void *source_data,const int size,const CharSet &cs=UTF8CharSet); ///<加载一个原始文本块到UTF16String
|
||||
int LoadStringFromTextFile(UTF8String &str,const OSString &filename,const CharSet &cs=UTF8CharSet); ///<加载一个原始文本文件到UTF8String
|
||||
int LoadStringFromTextFile(UTF16String &str,const OSString &filename,const CharSet &cs=UTF8CharSet); ///<加载一个原始文本文件到UTF16String
|
||||
int LoadStringFromText(U8String &full_text,const void *source_data,const int size,const CharSet &cs=UTF8CharSet); ///<加载一个原始文本块到U8String
|
||||
int LoadStringFromText(U16String &full_text,const void *source_data,const int size,const CharSet &cs=UTF8CharSet); ///<加载一个原始文本块到U16String
|
||||
int LoadStringFromTextFile(U8String &str,const OSString &filename,const CharSet &cs=UTF8CharSet); ///<加载一个原始文本文件到U8String
|
||||
int LoadStringFromTextFile(U16String &str,const OSString &filename,const CharSet &cs=UTF8CharSet); ///<加载一个原始文本文件到U16String
|
||||
}//namespace hgl
|
||||
#endif//HGL_LOAD_STRING_INCLUDE
|
||||
|
@@ -14,7 +14,7 @@ namespace hgl
|
||||
{
|
||||
bool ReadString(io::DataInputStream *dis,T &str)
|
||||
{
|
||||
return dis->ReadUTF8String(str);
|
||||
return dis->ReadU8String(str);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -66,13 +66,13 @@ namespace hgl
|
||||
return(result);
|
||||
}//int LoadStringList
|
||||
|
||||
inline int LoadUTF8StringList (UTF8StringList & sl,io::DataInputStream *dis){return LoadStringList<u8char, ByteOrderMask::UTF8 >(sl,dis);}
|
||||
inline int LoadUTF16LEStringList (UTF16StringList & sl,io::DataInputStream *dis){return LoadStringList<u16char, ByteOrderMask::UTF16LE >(sl,dis);}
|
||||
inline int LoadUTF16BEStringList (UTF16StringList & sl,io::DataInputStream *dis){return LoadStringList<u16char, ByteOrderMask::UTF16BE >(sl,dis);}
|
||||
inline int LoadU8StringList (U8StringList & sl,io::DataInputStream *dis){return LoadStringList<u8char, ByteOrderMask::UTF8 >(sl,dis);}
|
||||
inline int LoadUTF16LEStringList (U16StringList & sl,io::DataInputStream *dis){return LoadStringList<u16char, ByteOrderMask::UTF16LE >(sl,dis);}
|
||||
inline int LoadUTF16BEStringList (U16StringList & sl,io::DataInputStream *dis){return LoadStringList<u16char, ByteOrderMask::UTF16BE >(sl,dis);}
|
||||
|
||||
int LoadStringListFromText( UTF8StringList &sl,const void *data,const int size,const CharSet &cs=UTF8CharSet); ///<加载一个原始文本块到UTF8StringList
|
||||
int LoadStringListFromText( UTF16StringList &sl,const void *data,const int size,const CharSet &cs=UTF8CharSet); ///<加载一个原始文本块到UTF16StringList
|
||||
int LoadStringListFromTextFile( UTF8StringList &sl,const OSString &filename, const CharSet &cs=UTF8CharSet); ///<加载一个原始文本文件到UTF8StringList
|
||||
int LoadStringListFromTextFile( UTF16StringList &sl,const OSString &filename, const CharSet &cs=UTF8CharSet); ///<加载一个原始文本文件到UTF16StringList
|
||||
int LoadStringListFromText( U8StringList &sl,const void *data,const int size,const CharSet &cs=UTF8CharSet); ///<加载一个原始文本块到U8StringList
|
||||
int LoadStringListFromText( U16StringList &sl,const void *data,const int size,const CharSet &cs=UTF8CharSet); ///<加载一个原始文本块到U16StringList
|
||||
int LoadStringListFromTextFile( U8StringList &sl,const OSString &filename, const CharSet &cs=UTF8CharSet); ///<加载一个原始文本文件到U8StringList
|
||||
int LoadStringListFromTextFile( U16StringList &sl,const OSString &filename, const CharSet &cs=UTF8CharSet); ///<加载一个原始文本文件到U16StringList
|
||||
}//namespace hgl
|
||||
#endif//HGL_LOAD_STRING_LIST_INCLUDE
|
@@ -14,7 +14,7 @@ namespace hgl
|
||||
{
|
||||
bool WriteString(io::DataOutputStream *dos,const T &str)
|
||||
{
|
||||
return dos->WriteUTF8String(str);
|
||||
return dos->WriteU8String(str);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -55,7 +55,7 @@ namespace hgl
|
||||
return(result);
|
||||
};
|
||||
|
||||
template<typename T> int SaveUTF8StringList(io::DataOutputStream *dos,const StringList<T> &sl)
|
||||
template<typename T> int SaveU8StringList(io::DataOutputStream *dos,const StringList<T> &sl)
|
||||
{
|
||||
return WriteStringList<T,ByteOrderMask::UTF8>(dos,sl);
|
||||
}
|
||||
|
Reference in New Issue
Block a user