Package com.alibaba.fastjson2
Class JSONWriter
java.lang.Object
com.alibaba.fastjson2.JSONWriter
- All Implemented Interfaces:
Closeable,AutoCloseable
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classstatic enumstatic final class -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final Charsetfinal JSONWriter.Contextfinal booleanprotected Stringprotected intprotected final intprotected intprotected JSONWriter.Pathprotected 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 TypeMethodDescriptionvoidcheckAndWriteTypeName(Object object, Class fieldClass) voidclose()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(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 writeContext) 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) voidwriteBigInt(BigInteger value) abstract voidwriteBigInt(BigInteger value, long features) voidwriteBinary(byte[] bytes) voidwriteBool(boolean value) voidwriteBool(boolean[] value) 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) abstract voidwriteDecimal(BigDecimal value) voidwriteDecimal(BigDecimal value, long features) voidwriteDecimal(BigDecimal value, long features, DecimalFormat format) abstract voidwriteDouble(double value) 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) voidwriteInt16(short value) voidwriteInt16(short[] value) abstract voidwriteInt32(int value) voidwriteInt32(int[] value) abstract voidwriteInt64(long i) voidwriteInt64(long[] value) voidwriteInt8(byte value) abstract voidwriteLocalDate(LocalDate date) abstract voidwriteLocalDateTime(LocalDateTime dateTime) abstract voidwriteLocalTime(LocalTime time) voidwriteMillis(long i) voidwriteName(int name) voidwriteName(long name) voidvoidwriteNameAny(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) voidvoidvoidwriteRaw(byte b) abstract voidwriteRaw(byte[] bytes) abstract voidwriteRaw(char ch) voidwriteRaw(char[] chars) voidwriteRaw(char[] chars, int off, int charslen) voidwriteRaw(char c0, char c1) abstract voidabstract voidwriteReference(String path) voidwriteString(char[] chars) voidwriteString(char[] chars, int off, int charslen) abstract voidwriteString(char[] chars, int off, int len, boolean quote) voidwriteString(Reader reader) abstract voidwriteString(String str) voidwriteString(List<String> list) voidvoidwriteSymbol(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)
-
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
-
-
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
-
setPath
-
popPath
-
hasFilter
public final boolean hasFilter() -
hasFilter
public final boolean hasFilter(long feature) -
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 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) -
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) -
writeName
-
writeName
public void writeName(long name) -
writeName
public 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 void writeInt8(byte value) -
writeInt16
public void writeInt16(short value) -
writeInt32
public void writeInt32(int[] value) -
writeInt32
public abstract void writeInt32(int value) -
writeInt64
public abstract void writeInt64(long i) -
writeMillis
public void writeMillis(long i) -
writeInt64
public void writeInt64(long[] value) -
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 void writeDouble(double[] value) -
writeBool
public void writeBool(boolean value) -
writeBool
public void writeBool(boolean[] value) -
writeNull
public void writeNull() -
writeStringNull
public void writeStringNull() -
writeArrayNull
public void writeArrayNull() -
writeNumberNull
public void writeNumberNull() -
writeBooleanNull
public void writeBooleanNull() -
writeDecimal
-
writeDecimal
-
writeDecimal
-
writeEnum
-
writeBigInt
-
writeBigInt
-
writeUUID
-
checkAndWriteTypeName
-
writeTypeName
-
writeTypeName
public boolean writeTypeName(byte[] typeName, long typeNameHash) -
writeString
-
writeString
-
writeString
-
writeSymbol
-
writeString
public void writeString(char[] chars) -
writeString
public void writeString(char[] chars, int off, int charslen) -
writeString
public abstract void writeString(char[] chars, int off, int len, boolean quote) -
writeLocalDate
-
writeLocalDateTime
-
writeLocalTime
-
writeZonedDateTime
-
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 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
-