Package com.alibaba.fastjson2
Class JSONWriter
java.lang.Object
com.alibaba.fastjson2.JSONWriter
- All Implemented Interfaces:
Closeable,AutoCloseable
- Direct Known Subclasses:
JSONWriterUTF16JDK8UF
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classstatic enumstatic final class -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final Charsetfinal JSONWriter.Contextprotected intfinal booleanprotected Stringprotected intprotected final intprotected intprotected JSONWriter.Pathprotected booleanprotected final charprotected IdentityHashMap<Object,JSONWriter.Path> protected Objectprotected booleanfinal SymbolTablefinal booleanfinal booleanfinal boolean -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedJSONWriter(JSONWriter.Context context, SymbolTable symbolTable, boolean jsonb, Charset charset) -
Method Summary
Modifier and TypeMethodDescriptionfinal voidcheckAndWriteTypeName(Object object, Class fieldClass) abstract voidclose()final voidconfig(JSONWriter.Feature... features) final voidconfig(JSONWriter.Feature feature, boolean state) final booleancontainsReference(Object value) abstract voidendArray()abstract voidabstract intflushTo(OutputStream to) abstract intflushTo(OutputStream out, Charset charset) voidabstract byte[]getBytes()abstract byte[]final Charsetfinal JSONWriter.Contextfinal longfinal longgetFeatures(long features) final ObjectWritergetObjectWriter(Class objectClass) final ObjectWritergetObjectWriter(Type objectType, Class objectClass) final SymbolTablefinal booleanfinal booleanhasFilter(boolean containsNoneFieldGetter) final booleanhasFilter(long feature) final booleanfinal booleanisEnabled(long feature) final booleanisEnabled(JSONWriter.Feature feature) final booleanfinal booleanfinal booleanisIgnoreNoneSerializable(Object object) final booleanfinal booleanisRefDetect(Object object) final booleanfinal booleanisUTF16()final booleanisUTF8()final booleanisWriteMapTypeInfo(Object object, Class fieldClass, long features) final booleanfinal booleanisWriteTypeInfo(Object object) final booleanisWriteTypeInfo(Object object, long features) final booleanisWriteTypeInfo(Object object, Class fieldClass) final booleanisWriteTypeInfo(Object object, Class fieldClass, long features) final booleanisWriteTypeInfo(Object object, Type fieldType) final booleanisWriteTypeInfo(Object object, Type fieldType, long features) final intlevel()static JSONWriterof()static JSONWriterof(JSONWriter.Context context) static JSONWriterof(JSONWriter.Feature... features) static JSONWriterof(ObjectWriterProvider provider, JSONWriter.Feature... features) static JSONWriterofJSONB()static JSONWriterofJSONB(JSONWriter.Context context) static JSONWriterofJSONB(JSONWriter.Context context, SymbolTable symbolTable) static JSONWriterofJSONB(JSONWriter.Feature... features) static JSONWriterofJSONB(SymbolTable symbolTable) static JSONWriterofPretty()static JSONWriterofPretty(JSONWriter writer) static JSONWriterofUTF16(JSONWriter.Feature... features) static JSONWriterofUTF8()static JSONWriterofUTF8(JSONWriter.Context context) static JSONWriterofUTF8(JSONWriter.Feature... features) final voidfinal booleanremoveReference(Object value) final Stringfinal StringsetPath(FieldWriter fieldWriter, Object object) final Stringfinal voidsetRootObject(Object rootObject) abstract intsize()abstract voidvoidstartArray(int size) voidstartArray(Object array, int size) abstract voidvoidwrite(JSONObject map) voidvoidprotected abstract voidwrite0(char ch) voidvoidabstract voidwriteBase64(byte[] bytes) final voidwriteBigInt(BigInteger value) abstract voidwriteBigInt(BigInteger value, long features) voidwriteBinary(byte[] bytes) abstract voidwriteBool(boolean value) voidwriteBool(boolean[] value) final voidabstract voidwriteChar(char ch) abstract voidabstract voidabstract voidwriteDateTime14(int year, int month, int dayOfMonth, int hour, int minute, int second) abstract voidwriteDateTime19(int year, int month, int dayOfMonth, int hour, int minute, int second) abstract voidwriteDateTimeISO8601(int year, int month, int dayOfMonth, int hour, int minute, int second, int millis, int offsetSeconds, boolean timeZone) abstract voidwriteDateYYYMMDD10(int year, int month, int dayOfMonth) abstract voidwriteDateYYYMMDD8(int year, int month, int dayOfMonth) final voidwriteDecimal(BigDecimal value) final voidwriteDecimal(BigDecimal value, long features) abstract voidwriteDecimal(BigDecimal value, long features, DecimalFormat format) abstract voidwriteDouble(double value) abstract voidwriteDouble(double[] value) final voidwriteDouble(double[] value, DecimalFormat format) final voidwriteDouble(double value, DecimalFormat format) voidwriteDoubleArray(double value0, double value1) voidabstract voidwriteFloat(float value) voidwriteFloat(float[] value) final voidwriteFloat(float[] value, DecimalFormat format) final voidwriteFloat(float value, DecimalFormat format) final voidwriteFloat(Float value) abstract voidwriteHex(byte[] bytes) voidwriteInstant(Instant instant) abstract voidwriteInt16(short value) voidwriteInt16(short[] value) abstract voidwriteInt32(int value) abstract voidwriteInt32(int[] value) final voidwriteInt32(int value, String format) final voidwriteInt32(int value, DecimalFormat format) abstract voidabstract voidwriteInt64(long i) abstract voidwriteInt64(long[] value) abstract voidwriteInt64(Long i) abstract voidwriteInt8(byte value) abstract voidwriteListInt32(List<Integer> values) abstract voidwriteListInt64(List<Long> values) abstract voidwriteLocalDate(LocalDate date) abstract voidwriteLocalDateTime(LocalDateTime dateTime) protected final booleanwriteLocalDateWithFormat(LocalDate date, JSONWriter.Context context) abstract voidwriteLocalTime(LocalTime time) voidwriteMillis(long i) final voidwriteName(int name) final voidwriteName(long name) voidvoidwriteName3Raw(long name) voidwriteName4Raw(long name) voidwriteName5Raw(long name) voidwriteName6Raw(long name) voidwriteName7Raw(long name) voidwriteName8Raw(long name0) voidwriteName9Raw(long name0, int name1) voidwriteNameAny(Object name) abstract voidwriteNameRaw(byte[] bytes) voidwriteNameRaw(byte[] bytes, int offset, int len) voidwriteNameRaw(byte[] name, long nameHash) abstract voidwriteNameRaw(char[] chars) abstract voidwriteNameRaw(char[] bytes, int offset, int len) abstract voidfinal voidabstract voidwriteOffsetDateTime(OffsetDateTime dateTime) voidwriteRaw(byte b) abstract voidwriteRaw(byte[] bytes) abstract voidwriteRaw(char ch) final voidwriteRaw(char[] chars) voidwriteRaw(char[] chars, int off, int charslen) voidwriteRaw(char c0, char c1) abstract voidfinal booleanwriteReference(int index, Object object) abstract voidwriteReference(String path) abstract voidwriteString(char[] chars) abstract voidwriteString(char[] chars, int off, int len) abstract voidwriteString(char[] chars, int off, int len, boolean quote) final voidwriteString(Reader reader) abstract voidwriteString(String str) abstract voidwriteString(String[] strings) voidwriteString(List<String> list) abstract voidwriteStringLatin1(byte[] value) voidabstract voidwriteStringUTF16(byte[] value) voidwriteSymbol(int symbol) voidwriteSymbol(String string) abstract voidwriteTimeHHMMSS8(int hour, int minute, int second) booleanwriteTypeName(byte[] typeName, long typeNameHash) voidwriteTypeName(String typeName) abstract voidabstract voidwriteZonedDateTime(ZonedDateTime dateTime) booleanxxxbac()
-
Field Details
-
context
-
utf8
public final boolean utf8 -
utf16
public final boolean utf16 -
jsonb
public final boolean jsonb -
useSingleQuote
public final boolean useSingleQuote -
symbolTable
-
charset
-
quote
protected final char quote -
maxArraySize
protected final int maxArraySize -
startObject
protected boolean startObject -
level
protected int level -
off
protected int off -
rootObject
-
refs
-
path
-
lastReference
-
pretty
protected boolean pretty -
indent
protected int indent
-
-
Constructor Details
-
JSONWriter
protected JSONWriter(JSONWriter.Context context, SymbolTable symbolTable, boolean jsonb, Charset charset)
-
-
Method Details
-
getCharset
-
isUTF8
public final boolean isUTF8() -
isUTF16
public final boolean isUTF16() -
isIgnoreNoneSerializable
public final boolean isIgnoreNoneSerializable() -
isIgnoreNoneSerializable
-
getSymbolTable
-
config
-
config
-
getContext
-
level
public final int level() -
setRootObject
-
setPath
-
setPath
-
writeReference
-
setPath
-
popPath
-
hasFilter
public final boolean hasFilter() -
hasFilter
public final boolean hasFilter(long feature) -
hasFilter
public final boolean hasFilter(boolean containsNoneFieldGetter) -
isWriteNulls
public final boolean isWriteNulls() -
isRefDetect
public final boolean isRefDetect() -
isUseSingleQuotes
public final boolean isUseSingleQuotes() -
isRefDetect
-
containsReference
-
removeReference
-
isBeanToArray
public final boolean isBeanToArray() -
isEnabled
-
isEnabled
public final boolean isEnabled(long feature) -
getFeatures
public final long getFeatures() -
getFeatures
public final long getFeatures(long features) -
isIgnoreErrorGetter
public final boolean isIgnoreErrorGetter() -
isWriteTypeInfo
-
isWriteTypeInfo
-
isWriteTypeInfo
-
isWriteTypeInfo
-
isWriteTypeInfo
-
isWriteMapTypeInfo
-
isWriteTypeInfo
-
getObjectWriter
-
getObjectWriter
-
of
-
of
-
of
-
of
-
ofUTF16
-
ofJSONB
-
ofJSONB
-
ofJSONB
-
ofJSONB
-
ofJSONB
-
ofPretty
-
ofPretty
-
ofUTF8
-
ofUTF8
-
ofUTF8
-
writeBinary
public void writeBinary(byte[] bytes) -
writeBase64
public abstract void writeBase64(byte[] bytes) -
writeHex
public abstract void writeHex(byte[] bytes) -
write0
protected abstract void write0(char ch) -
writeRaw
-
writeRaw
public abstract void writeRaw(byte[] bytes) -
writeRaw
public void writeRaw(byte b) -
writeNameRaw
public void writeNameRaw(byte[] bytes, int offset, int len) -
writeRaw
public final void writeRaw(char[] chars) -
writeRaw
public void writeRaw(char[] chars, int off, int charslen) -
writeChar
public abstract void writeChar(char ch) -
writeRaw
public abstract void writeRaw(char ch) -
writeRaw
public void writeRaw(char c0, char c1) -
writeNameRaw
public abstract void writeNameRaw(byte[] bytes) -
writeName3Raw
public void writeName3Raw(long name) -
writeName4Raw
public void writeName4Raw(long name) -
writeName5Raw
public void writeName5Raw(long name) -
writeName6Raw
public void writeName6Raw(long name) -
writeName7Raw
public void writeName7Raw(long name) -
writeName8Raw
public void writeName8Raw(long name0) -
writeName9Raw
public void writeName9Raw(long name0, int name1) -
writeSymbol
public void writeSymbol(int symbol) -
writeNameRaw
public void writeNameRaw(byte[] name, long nameHash) -
writeNameRaw
public abstract void writeNameRaw(char[] chars) -
writeNameRaw
public abstract void writeNameRaw(char[] bytes, int offset, int len) -
xxxbac
public boolean xxxbac() -
writeName
-
writeName
public final void writeName(long name) -
writeName
public final void writeName(int name) -
writeNameAny
-
startObject
public abstract void startObject() -
endObject
public abstract void endObject() -
startArray
public abstract void startArray() -
startArray
public void startArray(int size) -
startArray
-
endArray
public abstract void endArray() -
writeComma
public abstract void writeComma() -
writeColon
public abstract void writeColon() -
writeInt16
public void writeInt16(short[] value) -
writeInt8
public abstract void writeInt8(byte value) -
writeInt16
public abstract void writeInt16(short value) -
writeInt32
public abstract void writeInt32(int[] value) -
writeInt32
public abstract void writeInt32(int value) -
writeInt32
-
writeInt32
-
writeInt32
-
writeInt64
public abstract void writeInt64(long i) -
writeInt64
-
writeMillis
public void writeMillis(long i) -
writeInt64
public abstract void writeInt64(long[] value) -
writeListInt64
-
writeListInt32
-
writeFloat
public abstract void writeFloat(float value) -
writeFloat
-
writeFloat
public void writeFloat(float[] value) -
writeFloat
-
writeFloat
-
writeDouble
public abstract void writeDouble(double value) -
writeDouble
-
writeDoubleArray
public void writeDoubleArray(double value0, double value1) -
writeDouble
-
writeDouble
public abstract void writeDouble(double[] value) -
writeBool
public abstract void writeBool(boolean value) -
writeBool
public void writeBool(boolean[] value) -
writeNull
public abstract void writeNull() -
writeStringNull
public void writeStringNull() -
writeArrayNull
public void writeArrayNull() -
writeNumberNull
public final void writeNumberNull() -
writeBooleanNull
public final void writeBooleanNull() -
writeDecimal
-
writeDecimal
-
writeDecimal
-
writeEnum
-
writeBigInt
-
writeBigInt
-
writeUUID
-
checkAndWriteTypeName
-
writeTypeName
-
writeTypeName
public boolean writeTypeName(byte[] typeName, long typeNameHash) -
writeString
-
writeString
-
writeStringLatin1
public abstract void writeStringLatin1(byte[] value) -
writeStringUTF16
public abstract void writeStringUTF16(byte[] value) -
writeString
-
writeString
-
writeSymbol
-
writeString
public abstract void writeString(char[] chars) -
writeString
public abstract void writeString(char[] chars, int off, int len) -
writeString
public abstract void writeString(char[] chars, int off, int len, boolean quote) -
writeLocalDate
-
writeLocalDateWithFormat
-
writeLocalDateTime
-
writeLocalTime
-
writeZonedDateTime
-
writeOffsetDateTime
-
writeInstant
-
writeDateTime14
public abstract void writeDateTime14(int year, int month, int dayOfMonth, int hour, int minute, int second) -
writeDateTime19
public abstract void writeDateTime19(int year, int month, int dayOfMonth, int hour, int minute, int second) -
writeDateTimeISO8601
public abstract void writeDateTimeISO8601(int year, int month, int dayOfMonth, int hour, int minute, int second, int millis, int offsetSeconds, boolean timeZone) -
writeDateYYYMMDD8
public abstract void writeDateYYYMMDD8(int year, int month, int dayOfMonth) -
writeDateYYYMMDD10
public abstract void writeDateYYYMMDD10(int year, int month, int dayOfMonth) -
writeTimeHHMMSS8
public abstract void writeTimeHHMMSS8(int hour, int minute, int second) -
write
-
write
-
write
-
writeAny
-
writeReference
-
close
public abstract void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable
-
size
public abstract int size() -
getBytes
public abstract byte[] getBytes() -
getBytes
-
flushTo
-
flushTo
- Throws:
IOException
-
flushTo
- Throws:
IOException
-