使用FileWriter.write(String) 方法写出较长的字符串时实际输出结果与字符串不相同
Writer is = new FileWriter(urlStr, false);
is.write(sqls);
is.flush();
is.close();
其中sqls为:
CREATE TABLE "SUNAOS"."CM_C10001_TB"
(
"F_SSSAS" VARCHAR2(50) NOT NULL ENABLE,
"F_QWE" VARCHAR2(50) NOT NULL ENABLE,
"F_WBSJ" VARCHAR2(30) NOT NULL ENABLE,
"IS_OPEN" CHAR(1) DEFAULT '1' NOT NULL ENABLE,
"IS_LOCK" VARCHAR2(10) DEFAULT '',
"LAST_MODI_DATE" CHAR(14) DEFAULT sysdate,
"BANK_NO" VARCHAR2(50) DEFAULT 'SUNYARD',
"SYSTEM_NO" VARCHAR2(50) DEFAULT 'AOS',
"PROJECT_NO" VARCHAR2(50) DEFAULT 'AOS',
"CUSTOM_NO" VARCHAR2(20) NOT NULL ENABLE
) SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "SUNAOS_SM";
COMMENT ON TABLE CM_C10001_TB IS '外表数据测试';
COMMENT ON COLUMN 'SUNAOS'.'CM_C10001_TB'.'F_SSSAS' IS '何炜2';
COMMENT ON COLUMN 'SUNAOS'.'CM_C10001_TB'.'F_QWE' IS 'qwe';
COMMENT ON COLUMN 'SUNAOS'.'CM_C10001_TB'.'F_WBSJ' IS '外表数据';
COMMENT ON COLUMN 'SUNAOS'.'CM_C10001_TB'.'IS_OPEN' IS '启用标志';
COMMENT ON COLUMN 'SUNAOS'.'CM_C10001_TB'.'IS_LOCK' IS '锁定标志';
COMMENT ON COLUMN 'SUNAOS'.'CM_C10001_TB'.'LAST_MODI_DATE' IS '最后修改日期';
COMMENT ON COLUMN 'SUNAOS'.'CM_C10001_TB'.'BANK_NO' IS '银行';
COMMENT ON COLUMN 'SUNAOS'.'CM_C10001_TB'.'SYSTEM_NO' IS '系统号';
COMMENT ON COLUMN 'SUNAOS'.'CM_C10001_TB'.'PROJECT_NO' IS '项目号';
COMMENT ON COLUMN 'SUNAOS'.'CM_C10001_TB'.'CUSTOM_NO' IS '模块编号';
INSERT INTO 'SUNAOS'.'CM_C10001_TB' (F_QWE,BANK_NO,SYSTEM_NO,F_SSSAS,IS_OPEN,IS_LOCK,PROJECT_NO,CUSTOM_NO,LAST_MODI_DATE,F_WBSJ) VALUES ('123','SUNYARD','AOS','1231','1',null,'AOS','20180725133230012001','20180725133324','请问');
INSERT INTO 'SUNAOS'.'SM_ELEM_MODULE_TB' (MODULE_NO,DISPLAY_ORDER,DIALOG_CHANGELINE,IS_FORMAT,IS_QUERY,IS_LOCK,CONTROL_WIDTH,BANK_NO,DIALOG_CONTROLWIDTH,SYSTEM_NO,IS_REQUIRED,CHANGE_LINE,IS_OPEN,PROJECT_NO,LAST_MODI_DATE,IS_MODIFY,ELEM_NO) VALUES ('#C10001','2','0','0','0',null,'0','SUNYARD','150','AOS','1','0','1','AOS','SYSDATE ','1','20180724202236213001');
INSERT INTO 'SUNAOS'.'SM_ELEM_MODULE_TB' (MODULE_NO,DISPLAY_ORDER,DIALOG_CHANGELINE,IS_FORMAT,IS_QUERY,IS_LOCK,CONTROL_WIDTH,BANK_NO,DIALOG_CONTROLWIDTH,SYSTEM_NO,IS_REQUIRED,CHANGE_LINE,IS_OPEN,PROJECT_NO,LAST_MODI_DATE,IS_MODIFY,ELEM_NO) VALUES ('#C10001','3','0','0','0',null,'0','SUNYARD','150','AOS','1','0','1','AOS','SYSDATE ','0','20180718135855210001');
INSERT INTO 'SUNAOS'.'SM_ELEM_MODULE_TB' (MODULE_NO,DISPLAY_ORDER,DIALOG_CHANGELINE,IS_FORMAT,IS_QUERY,IS_LOCK,CONTROL_WIDTH,BANK_NO,DIALOG_CONTROLWIDTH,SYSTEM_NO,IS_REQUIRED,CHANGE_LINE,IS_OPEN,PROJECT_NO,LAST_MODI_DATE,IS_MODIFY,ELEM_NO) VALUES ('#C10001','1','0','0','0',null,'0','SUNYARD','150','AOS','1','0','1','AOS','SYSDATE ','0','20180720163410639001');
INSERT INTO 'SUNAOS'.'SM_ELEMENT_TB' (ELEM_CHINESE,IS_LOCK,ELEM_ENGLISH,BANK_NO,DATA_SOURCES,SHOW_TYPE,SYSTEM_NO,IS_OPEN,ELEM_DESC,ADD_WAY,PROJECT_NO,ELEM_LENGTH,SOURCES_TYPE,LAST_MODI_DATE,DATA_TYPE,ELEM_NO) VALUES ('何炜2',null,'f_sssas','SUNYARD',null,'1','AOS','1','去问问','0','AOS','50','1','SYSDATE ','1','20180718135855210001');
INSERT INTO 'SUNAOS'.'SM_ELEMENT_TB' (ELEM_CHINESE,IS_LOCK,ELEM_ENGLISH,BANK_NO,DATA_SOURCES,SHOW_TYPE,SYSTEM_NO,IS_OPEN,ELEM_DESC,ADD_WAY,PROJECT_NO,ELEM_LENGTH,SOURCES_TYPE,LAST_MODI_DATE,DATA_TYPE,ELEM_NO) VALUES ('qwe',null,'f_qwe','SUNYARD',null,'1','AOS','1','qwe','0','AOS','50','1','SYSDATE ','1','20180720163410639001');
INSERT INTO 'SUNAOS'.'SM_ELEMENT_TB' (ELEM_CHINESE,IS_LOCK,ELEM_ENGLISH,BANK_NO,DATA_SOURCES,SHOW_TYPE,SYSTEM_NO,IS_OPEN,ELEM_DESC,ADD_WAY,PROJECT_NO,ELEM_LENGTH,SOURCES_TYPE,LAST_MODI_DATE,DATA_TYPE,ELEM_NO) VALUES ('外表数据',null,'f_wbsj','SUNYARD','organ_name','3','AOS','1',null,'0','AOS','30','5','SYSDATE ','1','20180724202236213001');
但是实际的输出结果却在末尾多了一段字符串:
CREATE TABLE "SUNAOS"."CM_C10001_TB"
(
"F_SSSAS" VARCHAR2(50) NOT NULL ENABLE,
"F_QWE" VARCHAR2(50) NOT NULL ENABLE,
"F_WBSJ" VARCHAR2(30) NOT NULL ENABLE,
"IS_OPEN" CHAR(1) DEFAULT '1' NOT NULL ENABLE,
"IS_LOCK" VARCHAR2(10) DEFAULT '',
"LAST_MODI_DATE" CHAR(14) DEFAULT sysdate,
"BANK_NO" VARCHAR2(50) DEFAULT 'SUNYARD',
"SYSTEM_NO" VARCHAR2(50) DEFAULT 'AOS',
"PROJECT_NO" VARCHAR2(50) DEFAULT 'AOS',
"CUSTOM_NO" VARCHAR2(20) NOT NULL ENABLE
) SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "SUNAOS_SM";
COMMENT ON TABLE CM_C10001_TB IS '外表数据测试';
COMMENT ON COLUMN 'SUNAOS'.'CM_C10001_TB'.'F_SSSAS' IS '何炜2';
COMMENT ON COLUMN 'SUNAOS'.'CM_C10001_TB'.'F_QWE' IS 'qwe';
COMMENT ON COLUMN 'SUNAOS'.'CM_C10001_TB'.'F_WBSJ' IS '外表数据';
COMMENT ON COLUMN 'SUNAOS'.'CM_C10001_TB'.'IS_OPEN' IS '启用标志';
COMMENT ON COLUMN 'SUNAOS'.'CM_C10001_TB'.'IS_LOCK' IS '锁定标志';
COMMENT ON COLUMN 'SUNAOS'.'CM_C10001_TB'.'LAST_MODI_DATE' IS '最后修改日期';
COMMENT ON COLUMN 'SUNAOS'.'CM_C10001_TB'.'BANK_NO' IS '银行';
COMMENT ON COLUMN 'SUNAOS'.'CM_C10001_TB'.'SYSTEM_NO' IS '系统号';
COMMENT ON COLUMN 'SUNAOS'.'CM_C10001_TB'.'PROJECT_NO' IS '项目号';
COMMENT ON COLUMN 'SUNAOS'.'CM_C10001_TB'.'CUSTOM_NO' IS '模块编号';
INSERT INTO 'SUNAOS'.'CM_C10001_TB' (F_QWE,BANK_NO,SYSTEM_NO,F_SSSAS,IS_OPEN,IS_LOCK,PROJECT_NO,CUSTOM_NO,LAST_MODI_DATE,F_WBSJ) VALUES ('123','SUNYARD','AOS','1231','1',null,'AOS','20180725133230012001','20180725133324','请问');
INSERT INTO 'SUNAOS'.'SM_ELEM_MODULE_TB' (MODULE_NO,DISPLAY_ORDER,DIALOG_CHANGELINE,IS_FORMAT,IS_QUERY,IS_LOCK,CONTROL_WIDTH,BANK_NO,DIALOG_CONTROLWIDTH,SYSTEM_NO,IS_REQUIRED,CHANGE_LINE,IS_OPEN,PROJECT_NO,LAST_MODI_DATE,IS_MODIFY,ELEM_NO) VALUES ('#C10001','2','0','0','0',null,'0','SUNYARD','150','AOS','1','0','1','AOS','SYSDATE ','1','20180724202236213001');
INSERT INTO 'SUNAOS'.'SM_ELEM_MODULE_TB' (MODULE_NO,DISPLAY_ORDER,DIALOG_CHANGELINE,IS_FORMAT,IS_QUERY,IS_LOCK,CONTROL_WIDTH,BANK_NO,DIALOG_CONTROLWIDTH,SYSTEM_NO,IS_REQUIRED,CHANGE_LINE,IS_OPEN,PROJECT_NO,LAST_MODI_DATE,IS_MODIFY,ELEM_NO) VALUES ('#C10001','3','0','0','0',null,'0','SUNYARD','150','AOS','1','0','1','AOS','SYSDATE ','0','20180718135855210001');
INSERT INTO 'SUNAOS'.'SM_ELEM_MODULE_TB' (MODULE_NO,DISPLAY_ORDER,DIALOG_CHANGELINE,IS_FORMAT,IS_QUERY,IS_LOCK,CONTROL_WIDTH,BANK_NO,DIALOG_CONTROLWIDTH,SYSTEM_NO,IS_REQUIRED,CHANGE_LINE,IS_OPEN,PROJECT_NO,LAST_MODI_DATE,IS_MODIFY,ELEM_NO) VALUES ('#C10001','1','0','0','0',null,'0','SUNYARD','150','AOS','1','0','1','AOS','SYSDATE ','0','20180720163410639001');
INSERT INTO 'SUNAOS'.'SM_ELEMENT_TB' (ELEM_CHINESE,IS_LOCK,ELEM_ENGLISH,BANK_NO,DATA_SOURCES,SHOW_TYPE,SYSTEM_NO,IS_OPEN,ELEM_DESC,ADD_WAY,PROJECT_NO,ELEM_LENGTH,SOURCES_TYPE,LAST_MODI_DATE,DATA_TYPE,ELEM_NO) VALUES ('何炜2',null,'f_sssas','SUNYARD',null,'1','AOS','1','去问问','0','AOS','50','1','SYSDATE ','1','20180718135855210001');
INSERT INTO 'SUNAOS'.'SM_ELEMENT_TB' (ELEM_CHINESE,IS_LOCK,ELEM_ENGLISH,BANK_NO,DATA_SOURCES,SHOW_TYPE,SYSTEM_NO,IS_OPEN,ELEM_DESC,ADD_WAY,PROJECT_NO,ELEM_LENGTH,SOURCES_TYPE,LAST_MODI_DATE,DATA_TYPE,ELEM_NO) VALUES ('qwe',null,'f_qwe','SUNYARD',null,'1','AOS','1','qwe','0','AOS','50','1','SYSDATE ','1','20180720163410639001');
INSERT INTO 'SUNAOS'.'SM_ELEMENT_TB' (ELEM_CHINESE,IS_LOCK,ELEM_ENGLISH,BANK_NO,DATA_SOURCES,SHOW_TYPE,SYSTEM_NO,IS_OPEN,ELEM_DESC,ADD_WAY,PROJECT_NO,ELEM_LENGTH,SOURCES_TYPE,LAST_MODI_DATE,DATA_TYPE,ELEM_NO) VALUES ('外表数据',null,'f_wbsj','SUNYARD','organ_name','3','AOS','1',null,'0','AOS','30','5','SYSDATE ','1','20180724202236213001');
,IS_LOCK,CONTROL_WIDTH,BANK_NO,DIALOG_CONTROLWIDTH,SYSTEM_NO,IS_REQUIRED,CHANGE_LINE,IS_OPEN,PROJECT_NO,LAST_MODI_DATE,IS_MODIFY,ELEM_NO) VALUES ('#C1000
如下字符串:
,IS_LOCK,CONTROL_WIDTH,BANK_NO,DIALOG_CONTROLWIDTH,SYSTEM_NO,IS_REQUIRED,CHANGE_LINE,IS_OPEN,PROJECT_NO,LAST_MODI_DATE,IS_MODIFY,ELEM_NO) VALUES ('#C1000
请问是什么原因
问题找到了, 不是FileWriter的问题, 是生成文件并进行下载时
有bug