From 94075bd8560201e676915c79c364f73e04d9d9aa Mon Sep 17 00:00:00 2001 From: neil3d Date: Sat, 25 Jul 2020 17:22:42 +0800 Subject: [PATCH] convert json in cell --- Docs/ExampleData.xlsx | Bin 11873 -> 12052 bytes Docs/excel.png | Bin 0 -> 66397 bytes Docs/gui.png | Bin 35779 -> 36067 bytes GUI/DataManager.cs | 2 +- GUI/MainForm.Designer.cs | 95 ++++++++++++++++++++++----------------- GUI/MainForm.cs | 1 + GUI/MainForm.resx | 6 +-- JsonExporter.cs | 46 +++++++++++++------ Program.Options.cs | 6 +++ Program.cs | 2 +- README.md | 8 +++- 11 files changed, 104 insertions(+), 62 deletions(-) create mode 100644 Docs/excel.png diff --git a/Docs/ExampleData.xlsx b/Docs/ExampleData.xlsx index 54333794c281677e7df6ea8d693050ca81401ed2..42d1c466059fc67b27346fbcad89e08eb080e351 100644 GIT binary patch delta 3471 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 X2LsYYSxy>R36i?32-^Kq2t&w6Y delta 3303 zcmZ9OXE+-S_r_yZjEXcdYtP3XwP%c|dQi3Zs!_FK69gqf?X*Fa+M7~))7q_3s%EA3 zrbg}Zw*L?R=Xu}rq4!^2 zu!4{awrw5|4TSMlgOQKfYVuw-kfon5#58<)1s_no+P7tWLM+jyuuu7E?cDWVb2#{~JjqNr zjoqSob>Jg;PxYR$H>NHqMGXHvz-Jen^Gqs3t{^k;=?w$A{3-Wh3^t2^NfUERhy%yU zIEjvRT5vV=?kP(JL2KZmSomYb1$1 z?s0+W{V{6I{jxZnGJC(#U!;Dn_F5(k{T8Zlzldit9Na-Q88f1!E^-w;w|6`DY`mt& zLv|h^r?<@)`}PI-v#Ul6TgjY?hMi}-U8_RR^sesRQKs_K>Aj!Jtz>VGCO=eIeACa9UQBk&e%-D5yQ4=mwULydpT~qx9#A(8^SE zmeWxlQMGo^anpWD9CdY3@z||vOzM_!1GlnbyH(|au7^!oYK00D`*u_xOda^e(kaiH z>v%mW=DFSr`j1=jFW;e~Ji5l_j+bKw&9|Hl0H%?Y^;#}=m5edDizJ4hh#$ccP~N2| z0VhNWU9LW(=^CApqYNf*yV^dli0XrBXN=lf^LJ5fh#AbC2~5RZTY`tEX5cE9_H)bA z!>r3Fgax7@KKkUX2L&$-L#~=i3Z0I?%VDu144%!uzGFJTmfD;?Ol(%uWQvJFkVMtT z4|p@W$Sh}L(F(Z%2Z3^Vc5(;j=iDe;_mhrT$0J_82#bLq>3oRIH`?br;Yl)3_WT1t z|3DK|AYIjr=h!DCTJx;mbEyOIyn4>zruEx?H|vbFj`+aLyE^>p1qDXK4zX+({#fY> z(U1|b7)aI>H1@;Wj032o#a;ahovwbegnybcLpVhp$;6fZtcLpif&Tlnz9H1s=}D)_ z)L3AGgp--vXK$TqIgmTVr=B(`Wv+ehXM&URqM!AR#yV)Chj}WC^Jx4bx_icmQRh8$ z?U^UdX+P!+B&HZKof1{jf>n|!_SN*~Q)D@*yI~do#k-=?_VMS;;lka!O08|D^{kx2 z$RK5SPiwwxa#)b=W};wjdLv5rBF9F8m+e{h*_~vokXuXN+7&Gpn9cM;-oD<~QwesK zP$X#HT9OAT%Rx}H60;vSx`6F7B5`3xb)Y&CRK#b&Ov#baE2F2Dm56xqU5a?t12RE&hhKBE-IVd|long>}2OA1{ghOELE3$JoH$VKLiM z62>Y|f1uGLi{Yrkg06FuFGE8a;0;O|e}rKyY-e<%rpxr$ffkvz%NTe;`Ue5>Q0X?p zuS5VqDdlhXGoZwT1Kr(ToBTfm-TBCxga|ImqKWSSS>K|G<7GiNf>+ZxfmqPRc5AAe zia1rar6BTT^U3LxLMuI`PTJ;E)ux<^c>QULWX+)$j&<`r8|z8u#TF~T*pHO!6;B<*@V}1{AG@YQZhaLd<95A=jNtj&G?b!sjgI_klRcWfI(vLFtYXneL2i!<8^) zGI&_TlUT|R=>dzj+mbq3@5ilR51!nY8LT0`>BSl6*$Ipb`;x4Uwr&{=#gX$F-zz@M z(MmBXSnk&ul(Aj~oj#T6dh(%C+5DJ9NA`}J5K?8GNpnsNe;%MDs>90=P4;4kg?F1C z6$x z9t&zD<}PWr6{Ya@4vk|pYxo4#u7VezrQxt7&64EG6;Cy8R^+fDElCrvv(cS_?!u># zC03p=_n}>WD5bGE4MP(1=CJXJ;0`U4EGHl?P;Sv}zdIJ4MGG}PRg)pL5k@(I3z8$l z^rz{&tJKhB1N&)DL=SA(93~hMczBeQy+6TXGMD?n7*CK3CtS*Y0X{#AiH3#S_S;_E z9voNs9uzsxY!(9gQNr=MWQ3o;qSBsTR@^$~Q)3c!DJ@7WAeM&5@fhjl`JTpRX_F>_kY5M zi|2I~Vlax{3@(8hr$srW#^}D9w+U}jwRYBG#I#7i?~*;H#!b=$hI#n%2*JY%lD4Fge@j_Wb)xIYE&@fcRM5La*fVon5WzQ@hss5Uk5-2E%QP0r zHNL5lETe*t%oo;JG@r0e=B)S`>)0_*zV`9Ls~G+?)^PR@)g4!sCr#kSbTLK(U1C%8`Gw6X#_w|AJMrT zC~(#4h-SoQG>$JAgJugW8fMLfqWzyt#ziXUknPQ0OXy0Si@e?m{;?w;`1ku$?EY!H zv6nSDNtyy#%O&!vF)`QB|DyB>nA&U?7O?fixMT=+s@4+ zf-=wpL|38#;^f{a z8Q7%66J|?aq8Qv@7P2sWy0CUDhJNHF|G=)1@*Xjt@)##EO^PtRG8`e*Db+^4TETY1w8 z%Ab|xu~t`A_@PtN^T_H-97_Wjf(5^{@H)!{s;kGf-~%xfC|9}EREnp!agu|3e1hg2=WsS+`*~{L9v5^(7XR+OaOo$ z@bB`W{XY@45R~bkSNy-Cmsn*X4XRvb03gs!#K$+t&Cv&&D*$2ohhYE!^6#sFaBP0YWHJ1QG}xl-@)jA%xIt=+Z%oNL4{P1VSj1&_Sj5UKJa?1Vp+B zSSV7WB3-5P^L_XG@142t%$YO0XJ%*4?pvPS=UJSou`Uw>4+9w)8Iv9gVNOOyB}qm` z{*{j6s^^WJd&Sj@JlI?pPS!Yn{l`^<>MqO(Mn=|>&UofRebuH9K-mV9kumrG=OG{V zuXZORyR6Vdz$`-@x6V)hdFW(|CZAmU61X$*DCFOduFYptk=wsF`Mwu^e$t3V=S04F z!=K~fYnx+pM_)oP`G}0Y9q}zIqk=OoDa)B$5IkWBT+atLVf0bt)Ou7@YuVn%67{uz zqc+aQk~k#if_L7{ee>PfIZIWw8qbpzave&wY1#PVyW`)rTGV~1c)3b>xiIqonfE>T z-xcnp%qyEo7KBMIa;C}Q)-)~LQ~TbR?sI;L5&dG57#C+Tu)(mL=*4Oqvmo$Y>M zbNeqjlF_3CIOJ-@r zf3DmEK=-tm(Vp5!iGP5B|Ez@fpMfeK0q4Hmy)o><3J4sxyUcEcL;Qi%PQb%*gz}ax zF28oi0x>LhC@2+-6l0fdZ%VN-X>HqF+R-v9$eU*E+9Ill)yuT0m+KpzM@hSz(ZM+4 zMJ4<#Jo0GGaSp7ME$7z1-5sE|&S? zV>BGTNqbq#UFicT!GtaO>xuppPO0FM5(%f|3%VKj=!cCGBcZMU)h^I!poVpW(8H>1 z_Fr7CwQmpTZ1VSW)TMH~bTv%Quv-|h8w@vkQDkM74^YcWB+;U`o&_mcM&7@(6}C|A zLbuR@J@<5r>5_5zRjI?D=TkoZ%XDG08F3%@&dG}-SuXH45>fh+7j>WE-Ay9nj}OAn zcXMV>QEMu7f5<+;&~&aX8JVFpt7})*uExLuK2BvyzY*!G7r|Ys&H8irLF!HEe?8xU z=}3)hy)yqM>06qJT3D(9#7fe$$yXDD>gflDToW4v}Zh z8a7}?^ko+;vn+@)lt)OIeRw?6xR$&S=tU*#tdJ1nP#HGwFW1^TP$NYkU!~u}89#%t zKj1QHmd?!7)(#nrRp89Edz}@O%IE@^1;Zp&(rDW5lCZ~iY;*85qjEHWXi4#b#HrQ| zQt_lxRLHXRrK5Iym{3{&h0A?_|329^r_zm@Y!nXPaXxj(`eXNuAACRjA&7hXvh*ct#gXhL0E)dp z1|I$xr)segR^^rKv(;0IkV#Fw^Pui?WMF3(WcE~N4eZGm@h+Y%&!6s3Fw>%xGHadb zEYzuS(%R8@2mb(1kPLIUO&J(;Wp*4DEYNT$w#ssCoxY02dumo4(^7^>Kgq*9QD^-F z<0`7$2M!8Z&9IOLL~lSjnNXH~MXlE`u0(AjN}{x=Rhcj#xb6y2nJ(SK$&3o=gu!GZ z%-)wxZj_QEsyjmATuQT22?ZNeV|TQp#iunFan$ysDgS2g;8C4TfTq?yZO$ng|Jew1 z6qe!dXw5y$PC5jK>p1~Stg6V6BGo_g3v$!9+oJ~flHOr|*Y3PoOI-Et;Z0VhdDQXE zw>A7vR4n2lbx3DyzY?d%*A??Yd!%yugF2mG`ns|-FF_NxBi)?u-jUxUJE&pgY%()#v)POX+g(AH*(UxSP8Z$N1xhOPgcrZ)7?kG!tJtvgZZ&DaGb{oD$9EK$98-CoZP)Dp&-a9wX z(eN;%y4j~4^;}QqtsnzyVg||#A~y-RseM!}Qj|f=L3s=7EU}Ld~3&bPIPKxe)FS`4??btnVfwp z{0-OoCg7tza*brgeczuz3YfMh0aH^S5StDR-%qGj)RyBqAMn=j%paucEcTDV?o*w9 z6A=-cxjR~t*@2s(d(Bb$;5ZU2S#3B%rAiU{88grI);6^1$H~vv z?>8{leQX{tREVu^Px86G%-D{`f0e@rXtvRAN8Fd$7T$_@S0ZzR%cnH>)(IS3XpYXv zcoxd@fpICnuDm6(?|nlFe{;B#KkakE24rO|OZ=A^8FFpX44Gv6nt$9-i2+wQA_!|N z9hGxctC@)0@ zMRuK&2`}hCN@U(4!=xnioEwg{7;T#~Jo#+R%5qAR3AdB!-G+Rn^*je&qy{Mf;O>S)lv83P$8$|egmoA!4f{CLgZi}g+1_ff0fae6b>kmf8`j(({vPQTK?pG|PKTR^l- z6ua;99OJ=84a+XE1dr?oEVR@(WdhAo0iN_Qwo(UQ$9&qBzb`W=#*-v8O05{wb+a zeNBlzpiTp)Ur1CVd!@V4JuYhwR&x5mc5=)0$HqIYgGpZZsI|8nC0^V#;dKAmR| zR~}Wrv!m6o|G)%HRqpL)uB?VAowWr{agBqcFy5s!tws~XY0?uzx@$*b9Q>HWcpL&H z3iMUl_o&ndeehE2^>ue8s1GU9l;F(kvjZ@%sOm~Z8q&~PIel7YAj+g@&fs*hD*W5O z7OQ1JTwiP3U(M6dX#1)`PL}^XwcNte6pJk+Af5ZLVX@1GY>AR;x(%UCARcCC$FXj<`cjxSZLi%Q2dmrcOdBrKv9yOHRbj)#6 zOU-MWsP0R2Z8w^*w-eLFKGwR=rf4&cwhU|q-**1pK=>vOFGx$OT;n}+Ms;UZ)KK5{ zE-SBk`8fNN*Mu`SN@T1$eO&PH@?>}CeEbJiaPA7jhW_imAo{i~a)44}^)fKeqQp|i ze4hWur*|h;zw0N5@)K+lbaRJNN@J?{k|Q=`ReFRnyW?j?OQ~{4mjmg(6&8R(e(Dw` z#lN@3P}Pga0}z=&TwZ*uc-9De9$eK4;^WKtN7OZ7Gz@Z~d-ZwU1(o5tv8*Wkvg0z~hxNw>)F zCe^pz2Q1W`eW!ZNFcRcTk{aBl=skS!naISo%}&_;Hg!F5ljGEd@NVRS{*hQg5@Mpg z9oL>*5+(uIVR&q|=<@0SRHCmp9=jW*oo31Z@5y82Hal@8GqiEFJb~g5di=#~uAs>V z>Woe=7z7aQa3{HR1hC2BFTeM9_gga+U+zwQy4xWsnuqx83^n}l-wA%9uxB=q{-NDw z7w>!BnMFP_D1Iwe7b%eccT8JbeN$o7eNu~N;zHq#jAP2fw0*-;9eU<t+c_3M!9x z0M7@bcXE(%F@42BIbr&(pqcGs>WP)q`-E!1>LbxUs$NrUiDrbLj<6Zs5A5tHZ4qaj zg|Tj|O9ptTjqL(0a1n&GpxZ-+9t(jU#IbfaShB}!Ja$fwvojUGalP>Hm(8<+E$#t5 zKt{80mQ0|7$0h00xr?fAubanuBCG86bcPnTiRpY^@I zH(GxaX=c>J+!?*6e8PtJ2Fpaw_F`Iv>M{(7bJLmRsn;DIKN%_Z-nw%QtNp?ATZ~~h z%Lu8wfBhErA^Wc3@@+w#z&O*u_GDTa*EKWAPyfzDFqQS7JuW(3*|49#vc4-CKm09^ zKQgM4fL#>KFkhGqcYAm{jrM7AF~=(v9M;rCXpdcO;qnjn-`^AnnVZTF5LVzbNX?5S z4ZBHka_&>g&#uZ=niz!%cI~{pA4%djJ%K!v*@^rEyL%n?qQluHVy}_!v@i?=pjfy6 z`;EzU;Oyg_TldlYA)^&VSdDeiqgo*5#TElV*y~9mos{vrv#ryAx22|1GobW4k3ZHp z-FkX5VD0~z{=??qZs(OZNa$OhvZ)yMska%KV3Fb{?H+#x1-@NddJ1xE6lrJ9l)ya$ z+E@F59%3yA*s}=ju;ml~B+x5VGenIV3VousD!wl~zQA5lG$d{W`D{rDjMz2G4vG1T`yb3LW;& zDOGzM(uQ(804_HF*PzX-MVAJ_}>#Qm?)r z8LF(-eYuBS2xgq5lmlXpLOF-3Du*V!X&{0qT#Poz)sG#eijR60^uyK?4CA+8cAaoz z88j{(7l{5zr`|xg_vPgG8)?H&0CG&b`$QL3jOyUy=Z7(fw7uJc`;X2RyY3cYph_;+ z?>!g8A=>D!;)y|6HUuTSY$T>bGqVy&7tB@3xk$A_4V`QekwJgJ3(`&tY`cxZ&s1qs zF(SUgZY}CmL3_Bab-Yx9e1_GAtd}S2$~=aZ8=%KNIGH>Hn4y)G$S4)@%u0DP`;zWy zajIl!zMThMRSB_g{)T&lr=aaZ^T)t-;}^|&{yM8pQd*C}K_kL82#$vYK2wNUuL#Wk zR+sBsFVMjWM- zZ{bIdx%9&#h`Qh0MDI@#1a&U4m-cx-C-i^kjOoU|vJ^nNu53P`pu8n(5oY7V!BwMn zAQsmCtN-2-OA%rYlCB&^HF^t3I#|F7&O&EZj;v<@7&EyO){A8)9miMz6$75^DqQ1& z@KlqrrCkq7nHI`9O|@T6!s5tZM=$j|z4H^@XR5O*=Jeq@`B0=L_&2q#%jZaOgj0b( zBaf^l%1|@UtsJ236X^j-MNS(^6WfZ229_n_X&fI7YB1+XOpss892>F*thZdsWzT$a zUa$KV#Cq`v0ep0b-Eptu9?>;3S!8}KEwYKnz(gvey>p{v1ZoBDZLjK~J+I@`)7Yk7 zsieV@TxV9J)%XA4mkSu=pXdK@J~nZ4fAt{n_x2>lL5Wgngmr(0PF1;6Rv{YiSKKjA zh98z^2&cSF6lZtJBgqPjn(U`Z`HU`9KyE!i5U-ONqCmvEez3d;A~;J6j`(9}?WT=V zh$?+=Y96LXN!DbWc|=RgP*aONBbJ%w1K87`R=`odl*lUn=};S4-b6}szCs0b_z@x7 zKY0Q@LZr=8?9$h$`R-ePSy~q_L;CDZ|NOLADjbowgC6Q`dL_lmsa}DE>Wm`dzoTHA zl=88%5u|+)nhC(cOcv$)&Xd0U|!rr z$M;%VUg4vkG}3qf)xCM>Y)V3XzH>|Ex;?#Y0d4<3ejZtac8nG`R5p{w1aw3GU$X#l z$k{HTwr7?)Rl=r00<~GbE6?I+fNqc7k%fN1H|7OZw^oW}+#E4rVKu)$>cVL^*5A7h zywqqKGEXh#dZfRVv}^D+!LKZHI^Ty`#EktRkC4nz{ZIS+(7EmzEsU1ZzM*E40zFK2 zzb)gN)t7e}C}-QiLgMp3<4$fiQorh=L&=7ja~vNsMlZ9*d3q;Em%O2X*N#}xFIBaA z-5L>0R=M@etVN>2GAVEhEfpv8t3A)$h-0xeY>_@e-!-wY6sbmyzkW^4qmxdZ3o^S} z8%D=vHs_$jDH8JmCZ`)kDx0CAFWbp2Ck6(hJNgRAHy=%cU&0^UHJX zOOE}eg^O)V8-rl%MFf3j*9qB`XI%Spi97qEG@J2C16=nYXfe)`DVOz!pc*vY4#-8- z%M-v*s&Ooqde(@2WD)y{JV9%Wt!KEi2(2}j93fIu;F6H*biXCj^43k17d`S5GEQW@ zkZN5+J3d4K_Uuiz_|z~c)Q(Q{ddLuAzgTTmajTi0q#3p~Vl9G_r4xZbbqWGUEAE!i zuP0qVT(%)MwG??eAOWAgGwDCKFH*fB0@y#U0e{p~s?@<#x^EQdvr1AJs3sPvHRlGVEHB0U{Sb(3$Ey>9IJBXduEdBm#`9 zVm{_lh_4EgXp$?=^F)Y%kS>N!zQ|gqI$(|3O`b`MSE415*TN(LhB|G70)hgDYKS;P zI&X?y^tOIqZW+o>2U2fD9GqvwK7064)fp->SyiBJs@Uny+94Ow<856O{FB3}IgUa+ z7BQ5hGrFS%)*bEr!~?Ryl3qDy`1{39UVlaPS&5uskB?3s-}LQ;Hf;uidSCe}>}8;- zDe4HzBc zW|s&vqOKpC^c)GkIrKkt?`5E+3C@%v{NE);<_@Xp{-z#5F%GQ+{NNsSQdA9+YfEz7 z1EQcxXm60i%&cN;l)lgSN)%xaIX9%ik}2yOSoYTgLGQf^AUa0I0fRP1cp;r4t&3+pn$3y8GRnD_aQGCjs`Q`1##jY+wz8iK+&|{9{x}!Mc1Q zm7d@e=n$KM9FR|0qi4&kR-k+37@Os`)MjEHblHU^;GaDnTuAzpFHfpVpBNSsV5J99 zMhP+MSi)dgimu4VJ^w(R)6I0A;?vr2;83G0dQ6MB`7Q;6#xEF{WV*Cq??x9@RLtGCG-ltYaQ=}4D(kA zq2foeZ&k49{e>41K9V3RbDpRA?81FZef9ackpXM9Tq9ws)?n1*jPl8oVCLIuTfA2D zWHz=ksW=ECW8^7y0mxQ4X86gLK;%DSL!WVIJpp0ldjFK!+|Gl&Ezb0PeX*%&25X7c zC(7DnS3jCKjgAK3Z@mVJA1nDq{6U4)DWO%nfT=AwA9(qWTf)&Dsds^x*|Z2r!Lr@X zCprZsuNFk^f-gT~FWz?_6Mc^j4wueT9$jjt^Y3X=AvVwYI1>AdXCk<-I1Q?wY&YbW zJ+%xqewvoxCW7K^$|;5tpmWGkI~_&lJBmU-mBq`cATf(Jsp@ohJUa5>0tGiITfB$v z-VFumvAKg!e0hpFOgk|I4A%T;OQ z@s_Tih%%H@0uN9s6>lA2C-)H=C7(KBNlPNG{G}Z~1*VFW&&5!wX1wkXvlkgSG?7k_ zUNXaOx>UFZ%>)sd?5}>9=^eOnOA5qMf{fagco7?F-kqEMXQy2SlKfnIIvx68pl@#= z>9f{0Gh$xM$0k)cr;PFkwosx~`3UlE8%V!!JPi(URh#EOvEsCzViC2`2Xv%0K|!R3 z3c9}fzy>8MJ&tf@Y&mO6!3q(rtR$T)9+OA!j3jD7x!c_1`GFIdmx80ep5hO0I#JW+ zU>>uzB%jD77fyg{K#mc-X{?^R0O+~}J)U7$WQ~kSi@N-6v2&t4+5zt<`jxn0d%yZWe3tT(%(+Vz4m5@7juulke^#k7}V!=r5Qu$N5j zLIcsnsaK4m*Bo?b4XLJ@%U-^BV|7Pc=8d7F$%zQ`+Ks2nz%9-b@~67$Wg70z173Q9 zP@21d+ws@!$KeVW&ej%L_0d(-BmdoioZ#1X!RH5)AO`u6xodpR0U=uBf=%jvYnZ9x zB2b}>;HOM|C7KudDk%t*{;|))5>d3-Y?~x!n#8+>F?wI*TeZouK!qO=ZA+fWAhtScCzHDM zG_)OlFHNv_(URQSid^3n+SVNFW@*P$q?W*9r z=n-D)B5g=$i)r*}@7Y?$t+jJ{fr`Bqi2*30sB&RP3y*)cuQ(zph^LG>3KBBn#Zwk@ zj!-t@@q|uW-wKboJn3Ri9Zwa4DX;L>GjEpA)Hs+pOj`sBF2AjyC)RZWbSyn1UOT3t zOYQmshP=+m>&XDJF_;*AxLqt{gyV%`k{D1R=>1|0J#_IhhAXi7n|SM-jYrzk7J=2$%(ZHl#hw`&&<6p` zUBTFRv5Q9nlV;R)<{A7MBsB?a>AI4coP3M2gAnyArVkf?e9A3eT#u1ohs6d{I!=Eb zztxwdj5_m*FCU@ddTq=s@E$EC%Bp$5u$o>!@X{wnMqlCH9$+m?a^eM`jKlOjkD98g zsvj3*@kv;Mg_C~abHcDTdm%=%7ksW|?8;&$0$J-9Vlq)V=A2_G$`UQQC~@=z1GZU{ zz$bT4VkM`^%DE%>$iv2H19bN0-aRsi0?7gCzYr)%iu&^s*}ASTx#-mP1$7ck<9Bm* zmm1?u8RM?=aXR%Pi~ao&s4uqo|S9=sc4XUczthq zTB9O|*35urI({CV-Bf}PWzQ1f7n9o_cF3dg(lG5r>7AEt_c5o70{FPZJEv;|JkAQ&WuthM~1me1BLiUTp#M5m^i{t>OfW2DFa%LM``Vj15XoGw2}agskpsm z7Bp8}D&Eu8Ht9tN-8a(-nI}@NB9VW{`x1N64h=5Vmfljr4b0h>G#W@dhb+=vXw<5` z30y?y%h_Wm@KR6TN<_?nF%EB*M6?TaUn#26PFPxv?+T;eWGC+2eg@I0(QNxtcBsl^Nsq-lt$V)xsc2eJwR5`C}wZkFC55BD3N!uSo#8)A}k z89Y|g0MHMICb^ll;^r?gqUGBW4m$iV)ld^md%P?_%j`DhU~j0^O6_st7iO{1aE?gs zILS8V$LZfkSMDh#J^x>_Xvo||XKwuSBmSKPQ^GFW}~SeupVI$kIX z5i>7zlCD-GlE7Vo&S$POPq1`!9nCkXudVW1sVTxx4EYXR7v>D`(gLSPs~;(b!p-Cw z^^0FTpu0bN2Xa%*-Hr5e+Kj!*+Sy7um(X9jO!iRUTH%c$i>sJaTKAuk7zCZ}bNU3>J#m}8`0D#b3T;`^xezS^L zUFo0Id78@}TDf-=2W=28;*X3J<4?>-TzzZae2;6nAR2vj%}iS=7hL(WTx0H8t|uW{ z;RCG{fVmo5bT264J-`vS*8ZoD8>M3bn@c51gvnF|skgubz$Iiw=LMMR@}tET6m%d< zQ1Hkn$wW`_Bwfd9L`c1cBW&OIfuoR_V}p^fs<(u>6ZJINCqXie#XqtWGJQ!)(LDzm znD-*NDuy#GX;s4W60QVk-2jnyy=g8j1W(pgHHPexe+Up9eP2StnInM1F$nbtm@jo4-lTML4_ zXdnV1TZ2h+cKjd{=!cJknX)Y8O`>hblkz~(E2~1A5j>am^^d08R9W}QX-d?I*{1EJ zSaRVqBxX6(M@jeCHZjJxHh=DgX{Ci9N+X+B?}yDcxQ0$4fByQ+iPE z=L5&tdM<5p+(>(-I&eXs%4AvxB;;xxlM6-%D}9wd%>I2Hhet4d%N9`COj`uI9z6DOto zBo|*%Y&FhJ_s7JkIhzmh*nCf)J}F#pE$LN;IVydb1Ook9F!(LYdVoD`{14 z_8|H|26D{pv?7`?%MfU^^dJUr zxhvabjeF@THCWZ zXFRN2eg5!YuKAj1*4Z3W_kGqVpsP3x^v^(6P9ik}m0*12XjOxD7QD%R`K-~rMgrtV zm&0Cu6S>AMV9w~`>Ij=|;;=1_q1EiCd&kMD4IR;XL9$L`q~ggR zcc|UXK47QuJwaDe4l2HHan^9!a$DWdx~Ih%3S|gO*vdSbHq`r40kI^6+W1syy5x2@ z{`Iw2%6$rSkr(Qid|42fd2m1DGv>WCFTdo+cQ%Xh3NO=2G_S3Y_Zju|>xSO8PyQ~Z zCxcNi!+~~5Mg=k{C`CQA9@4bI=%gVwSm$?!r3>Y_nIT@s{ z6xhjnDFAw&HIo{bN9GPU0txEqy+!JC1W9z$h!dWObp(dUoeYMANBxp_49>u7{P@?( z1=VvO8`k8CYH#w_EGIUZS69+^^y{CsP^024AIA{zM-I_4U;@62l8}^XpRkvCf$90n zwT3cNFkm$~aq6;zBxLo^Wi{Pu?$5vH)xetE=8l`52zQeH+V%ZY^Y)n9>g)JCYof-= z%Vr7~(;Euw&+tVI+Lf!eIRUSPVM|3r`7O+Og-5ESji3$1oW|;?fbN?aAUA{H&)+NY z{krtD2JYoKs(KF%OL7(%AB4ISY-Wo}4pd5&ld}xz|Ju{EIv!q%-5g1;OrAykH+MdO zhHXpexw9QPl%{Xi!n1ieCgY<KzJAnG@#%Jlscm2rGn6*&_>cc0XZ;lUQX=;a^MM$Z0@HQl35h zF8cd9$o~c|Px^U|N1tEcj_tbNUGRweVOy9BybA)^Upd*P_)JNk=vgakk1vhFq}!QU zQM(+@0Bc7Ir=DSqz=+Li;R%VWGL-aImu5fu_>^9t9+dL03Oi=} z-yiEJ6J$#|j!#5z%i0NY>>r)DcWk9i#Ie_xPawJ})V;juQ{w5%Yj`-R_V#8=|e9*=El? z1wa3V1ov#@p6VRSYBz)g!z39c8VEKM=D@5~`e7Z1Gj>!<5zj z?Q`2;r2(08@<*yiN~6iVurDi09lMbddonL&YxC4x-*j1Ahzd+8bOcaZoj71ZBL95a zw0YE(OZS871$idbh+e?@wP<5ZZz+nKo~?lJjtCw-5T!aOj7?4W zf87ta!QJ~Sw=f@sk|{?x3PFuHT+N{LMP`24YrN*dP@Rl-yf{7TKE*^M9&X99si#q) z{%>WP^VMfS9ZqzdR;$fvg6D9}^AUx93Wvxx^0@07vX9VF}f-CetAA3VLa-n$<@yGtMy3TcQe8&~+gk&ub4^ z0FSTu07suxoYNz?%nmov29*}_U-hwWhF7-JLs#&743#w|eTt2On0&}a|E)~2^w)H1 z-x*u03Zafy9BZm^u#v9a_a4|8_(DZxjit3JD`DY$Um{ zl~gVArnMBc79NsQk%iT6c!JWeea3?d3R+Tf|2GX1t}}Vz&8TT>CJ_6+N5Te6DxDr@NMb1gQzAROO#8QGR1I=d z+v^!aVh$oab*j7+C>RyjIy480p0WF2g8_b>MsZo;MwF7)x)UdHSf}^Zxnmq>(>(FU z=RdoNALVD;CFRvV<|?xs0~Mk1r2=L->akz-gU{Ql!1n-^+|}z<7b5NrdD8G7$+w1I zVBAYc4#BB{@5H$v>r?trSoMdL(oBMy!>8x;G@p1N8aez1Y-}v-BU%=rMB4<(%jAL! zZ;fXlLBLWUg+M}(Q5$nMm!bzxd2O>KrRwkfHUcE#bVOIPB zh|7)I?ycfaLoZM1F-|H;Oz6{XU`Mo~4%-Br!j{tV@l?lm(r*J(J~!Rkc{8ETpK@UK zT7q-u(Tb4MLg9l9R`%k*Kb~)PKRk802S0n`=J;sgxzo!&DOB2)cJ7z3uUEX~-M*Q| zJvq;G7_T|MR*FbvAiWictcv4sNH=D)hfBjYFdQij3Ma$-Axc>-*xKbkA3z8VI zzk+EU$7&OWLsMrqwU!}QyXdKw&e{omEx%fI{$66p3^J~%b0XKD|GG|QXO}q1JoWxM zO|i?CAK=7V_k0{yq#jnz_`7t3N>L;aZDUD)(u z>z=R9m70PAyDOgiEPLdxa3}TDTX)t1P3Lz3gA{urpjR98cp|5o!zCwY$f1IBgIFz4slF^rRpK{ZZCNMpndr1bc)yJ)P~XP_@z`(OaJls6K z{PglHT)(H7ZiQF#xUkyFK$@Fajp+$*egw|jyi_?A$_E}EUTj|7U5M?gmBS}FY3`Ze zJ@L9eu~hNuvFdBTomA!+vR4iNv+@A<-g1JiL8|e3Hn6Ybuc;JGuQYpquY}?U<|{Gr zUlhiylw91&z(GaDoqodwoJw&SU-D0oO^+ncG}e6QbBvehJ(|Hp0#Y%3 zz>qRUCy_m6>H%0L-wncjbziD-4<|W}SPh&%7Ja*NGo36J#@d$yU7K$@AB?_y-{1T8 zWLER`%Fl`O_hnJH8g%w18jr^QBc?EitXJJRO$fgKPNhL@?XBjUqe9<#NT|%D-YpCe zkr;0!ZWRmjCybxYc{BsjHO=~40`aalX0hD16NKX3k`$8^on8EZE7EIx{H`$l;U68W zX_7c=7M^JDXFD9qdCdJ5iTMvq49BSg*rzAHDq>kh4u>RUMasFC(YAlCRJ3%qHVLkr z4`f5LQCZwi%C*mo;I@8kN#8O%H9froIvc5lLkb-Ju-(TUE4a5mAWv9>{IX5Da5pcx zY40ut4L|wA&&q891?9qCiUHQ8YFuIM+vHvERr}Ru$ z-S{BzUXoG3^H7?&2%$NO7EVKno%mUzF+89QRuIX_n;=cjt)QERm5UQ@Z%*c_wtYoz zs+HuOKqGUZ9qO~rFvPqE%k$+6B7^>@W_sKnCAQDMFe=JXD=YE$CzW03b7}Ts!U7!LET`yfIBB=)I47y}-LB z0~s~SJ>f(VE+pttaxUgmHiyVwgH-ax86}9SvQthH^(LVS0ejA3&Dg&_X)R#tc|rE- zD935rTycQloQFb*F8|?uH0|(@k`_e26z^RK?)dQ;;Bk-IAd$mq)kp9bj0U~B^t5#` zua5m>rsQ_|?U481-pH*OVsQNJCeAFa4XKckxi!9^*-67V{K`_4B4FbS4J2 z7V)S=%@Drpr9w&-axRc&)dAx>O4yCwf4qd&9f#PvG!(BY zMCi>w+yYrhKy&$FG=^BGg^o5|zT9rmvkb*_#X(mlRRs49_Q zivyyE4`T)^!Kc5S)M+}r6`X`;t>p12uP61CAAE!9-9^Tz%r%TqT4Q0=_)&{wTed~P zSQrmm-L&Ax+8P53nhe{#g(bbvGoi=M^Aat^GzES3odR)D`?9i=xgc|QbbT5_fv71P z+L@v#goC}@$`6SA4daqHCvA4z6D-K6^U@@hobZ$0Bx;)?5KqAAb)JOkf$06{3hXO;pWcmW`GQ}b#Z8lxb9B}Qzw_)!0#P}K^~2k*v^e)r_^F%Dtv9r>0_tkG>fR%j`rb4tVA7oj%8j{0JX5rr4NK_ z4p_CnAh1*)#Q1dK)h9u)m zG7g`&t?1qZp35^kyjJftuUDxRt>W}Qd0VO?a|4?F%%V#LHqY7oSR0}vtX7E@GVLfv zS<^L13z z0nrGe1iD2YCTh$Cnz^&p%91w4Qcrt#KkB->3X;cB1<9b4CZF+5Zx9C*C^Pa}@C9-} z1$Tci4`~ra4w;*~~$p#U`iK40YI>jtg0FBjbBsj<5${rH6O!v%Zw;iP5XQ8P0J_ z{`fXd2Fr3LU61lTy9K;>9k1S+a`aph=oAw(UGIkGMh!F-9f|Jct}omIvLDMI9{$!H zsBeOq3!MW03Mjd{1Gi&<=cEg%t{(_EN2xHKTd0DPOQ#Cwkl%!sD;L&|z1Nu`YoMnw zd0ta(VuROvRt!i}{)5&~f7o>(U9uq!wRuY-aH@B5;yU|Zt-Nh2b{CG2Vl76C=HIBS z0`mS+dB|EE(kU>rs+dPqg=R{c4A9ex6oB)mD5U#LnKeJtQ7R7r{3lsOp8RqekJ^tF z#B}7-Q~b(<&QAaMRK!TZR(9N;!yX?xJ2ZJcP`xy4pHPa&(dNgGYcMQOq>yO6hlX!l z9tu1^CSL>TI)s|5nO;5uKeKM<){)^l5y~yR@J|oBW9VEA=(F)=A*{Zge0Dp=St~rl z${>RhMI{b3G*pEbxLC_U2MTycAm9U2W@cY%I#Ss50s4kx&#@G%Y_M86ZyeY>nj2RyZde5vyW*i#YbYs88bNwEneVKS`}`dk?Bn##M=AN;W5v3{tsDi9Trvlg^dCO zLr4tWFoZOc(lA4VlF|s$0wN*;3X(%fGjvHK(hZ^_-5nAl(v5W2%-Ou}@BOaxox>k< zaSg-l{j6s_EADl#wc8bOoR}(gpL|L#L2&!xl95O0J&@c1G!NOsJ;WRV$3w-!Zsji+ z27&g2zO|Y2zX>|ePXvt2!yfN7Y6a8ntOTRC8K(oM+2!ZG@2Gr5Nd^)0(9(PIVoH6-Zm(IoZ-H2{S4Ty znQ-Y^ydI*tS|Try$``1;6`k!fBH({HF!EPIfP=+SC%9@WWfRx$>dO&pKJAUPQKRYC zz|=2;s(9=0k_SD8lv~qKJ4xbvg&AOhUkHgslNXk@Xj2-1Y{PuocRF#vVF1_Z+wK_mvqc zRL_aEI5bH;;pJ=!3C-Q^bQ)%7{%yE`Xw6EESnU6M-(XWQjDnPW@h}#W(1yv5_X=VQ z6^+BtS9q#PMiVPcGigapVEBnvAs0h(0qIbVS5Hoh({D<@rt))4SFjHMQm6_1ohEQS zTq)zR*>y#;zxvy+`b1ABZsa}jGxOQ~l1Iwe4xaoZR0_T+{v!Ou&OBsY$QduI(;%5L zQVn;TB#{)Wn@5lpH@~S)!K}y;|3$Si4W5GFo5{o{(usIal9Rr#{isaN6$;*tG&91D zWUZub_a^DXt|OSTe%nV8@AOgbIh`LXYj8vQ3)2w_u(iuF?J367K1%bgl+LK>QVK zjqLjC8mYRdB;~8wecau|+_@j=+39rG!?XJosyTnkBZ!;nN^y?yP4={3z_MJ~b6wZR zo^_!7Px9>czEo?|S}k*8mR%$DVNTqf$}#yb4;J${=R%k5C}ec-$6yVrHhT&*-9BgK z4Hn*Dtl!m&f6XrJc2E7c@X%Lol;>>&04^A~K>}Y4!Kv~u=t*p;O(;c>v&;w#A&<1A zx~Sgs1fG#_n24(DrYR%DuiCuq}3L#%AG+v>R(*981W*6bROFj z>f(diXpU%vqUqR3GF(GAoH-nLXv}^gbM0rb6VFJ%U7HY{sN8&1QDW#{ONo#~>%m8P zZPgNFRutb7!@vRR(TMw^Oj0J~mip4wwyvZT2BF9d_F1ZsY63kBSc#Xb`vc}k%jFk^ z>jwA+ql3X6<82l<##c7(C^5$NA|z=`6-CF1+8|L;hYl*IHWrH|Mpeo0>U1NkX60BH zv4xHIB2my-l_}8AnrciPFt=oX5O)5oMg6SPU>e?IkUcU_yO6gN0b(yUqhWEdBk#?v2&K_rAwhoBkBCe z@c8%`g2*~~N}WVw!!)&`Bnb)ZAr_8gYrL8*A{|m@Ma^eyg5;woQ3JUsgicex1{+lu zIyo8p!$6I2D~?OPQ(Qmmw7haOtS>;xYiwF0oQ$%hewKa^Wm2 zrcps^^}JGFQ`F#r0YfJE04H)6)46C}S8w)+-oza$MHrN>Aph;bxEZP;wLli~B<*qj zN(~oVp5joMyF>2XoT z`G_Jj8fOJ?qVfUl?XjZYZk8%@)q!dCPOdlV*wr74V`6ag4xU?Rk~)}Z(X5S3riOO1 zwy3IB$=ZUkI7-uJfv}@_jv$FJ7>+(<>@5+7fThAbX^`^6T+!_`GjWhFcJaFSHdacI zS0xUV#dO_Wsbu|$0i%kdshV(|AYm__d^bVTzarbQk6iK9CP&G;ev+j=I)=u&F@GGD zyn!?2k6uy$4P5A^_D@@Mx=fKldJVSR4&ZXEAR>51n+_u5h5qsKCOaX4`lLr0>l1IC zB(1;ef!q8*EVR3E!ArQI3&ehSAv_UhP20jd&feF52b4Fhaq#H@OFL;5tf!{Dx+<)nHt#yBUl0k|Oz zk(B}Kn26%;CM_QA%A=P=8-gEfoxefw$WPhqxuDMqVtn40!_Xlgi7CQ4c*1aUTao7J z$DHu1Yoap_!{S5hc$5LJ$*AI5x&BA$47V$u>2s#y$dk2D%}10`gEq6_!53E#OBQjT z4Pkhg=8Tp<+0=6*NvD{5Ww1%B==40^53a9GH~mxXOO_;^gL z2*0ud+3>O0FucaFjl}y*)_v#8zRJ^eN{BT-WM?HYbfa3u5_KVRl!ZxjAM|zk9#lxBb3KRa#dxDel@2yW}HWz5VEs#Uc)E8xT2n%K^x}hO%VJUoTPm5HD3av z5@!)FSn0Xo!ct9|+blv_UmLR?HhadXcd z^XU9+)Wt^2#dqF))Vg|#?}Pr|B1m$9TZR{LZweMZE08MaE2|egZmxGjeqm?GAH#G9W>Dg#3QyQN&wWiaRUQ>=L0zT&|rtC0l;)W6cG$iBm}Hw;wXFf z$qH$nka0X622(uEr{Yi1Vda)D>Zp=?s*)5aoHp>p3(ehifpDF^7^r;OGoo(<`AI9bfEgg*& zY>Er&HqgUP<6b)$jNXri zn*O9F9sOCX+@j7IHT{q(g(j1H)#sFwz*ApWQsrjT(DS&!?9*4#pS{n1zQmiV!M~yo zzcK_9U^B+`zP6Igsod8vX7BjwHkZd=lBjb(_#@G^*#hULk296_YEjm@g@Z;0x$l2t1$45J3m#=H`POiyBR&$b96<~yd`_PpDZ1gWkq)yg*>Z3X z+;02A60@z~F&s$h+Z~YpI7V~N#mAFa4h8Ma`E4=Q^g& zbtIXRrQ4G|sRz2#+eby`K1X)5J;088PtQ@UX7qD7vAjDnSJHis{xwcSHI?!nCY}`! zzmm|Y@#L2k(wAzCYVDho=GeIsT5$$Mj~N&Zt#US1-c#ndm8>f(OaesU(c)+buDrnpIws}V!)DV&bP%0{*l|*mId17FoTrdr=ud^=fG^WeMjsJ5>%H9|@Rf)Bsn zP^G5duGw99757!Am$ry)>7|-3!MG9Cn;yQ5kp~!8bl>`6Z0>exp8?b}n{`ZiNrUlMl8EJPF~-NpOUc zdalb0Ymk~(@nqgiVKp~{U%3_K^55+V8IMqY7li5cna_G1!SqoC&xqG=dl)2gtWkujTs3WL-# z=oMGdrDL;}G7rD9#@ndr;^xt|AK#B}&Q-`h;QSW{6NvH>G0}&_0vBW@mSJFn}Ct!-U(}L z{7d`hH|S9jrSA}{((nypUle(~DPC-A=8VIXABI|L>B1oKC2-~QtI7HLKpNAIRA$S9 z;b_PIx;7hnd(pzEf5XDpd{xBCqk(|DAvxeLTO+3qvOPqdAnCS%K_NdspjKS{-A6ZK zV@|TQe>E5QrrIt8MH%D|eCR~)iu?;Oif{TV1UC6b@5!+W+lnXYI; zsg##X8SDVU|G9$AOS)rYjsNz>K8mzijaBS}M) z__!Xq^O|S6^6IrakxG{Wgl0%PSkSuKwz6|lBb zkYlrG7#RU|!{EdK0{0YmgQj$(M$j2HNrsJwgQJ}}x4=+6+9CI=eo39zs1UxVaqn>b zZ++aMwHH~sD~@CvIMiFjiGO;l=TW@NvOn}XW%d-+J#1s#Yc#W&bT+E+aRZ6XheD6) zc`K%+{cqO}?h*Cowq{@vU9J%6DrWB|q6xrK$b0!u6@+nbBXN=?ijTD$X z_m9L+-1W9n#B2zxG*7PP5Y%=Q6sP79K9GdXA8lXf z>;*(w1Z2<~EKK!;?QY1)6~y0{sdxm9y)4QTk|Pfy?Zmt~EKw767Yrm0m!S+MAsAPL zmd7JmcSX)Pq?F0^Y~nh#ii%A>9O#Gjm)##3R@BXVz-Uf$2{CFRVtztL3PiqnTmVDn zBXvZwoU&wEL6Ok6=XQJ?Z*35l=U$a6NetTD-u8i6H6Z zdHd>B@n&K~yv&X?vlI*22ScV?c3#Tjrm&Y?a@@9@jW1x<8v2V-%Vv3I8DY$#LJve) z>5{jgD(*+_JI#Xyw z0|xqUa}2m1b+Btg)>eDypA-;NG#Vso3{CxZs5(w^_+jmDl!7J zz38hp^uksA9pUKt=YOvC?~5IjN?4kK_(R9iYY7J8o>YKj`Oj~6Z}5=-6z%{17PHnS z0{P#^K6F&ec!F6Q(WvWaHwiJu=HFlFe7Zi9SmfWgT*>_Vy;r_$K^I41omh-VH-LfxUohu$Jj8s_ihK6=myI1x1SGG&Ke8=*G^QN1 zu=|v#d3i#0f{q2x@1O_?pxYs|8igl|D|&r~qGaq$5lmPd*<=EFB_!jJ(O zGUF}?{B2C_;>m=zzd9yZ8L#}k)&KA6TmM|W(H?x1b>6gb?vFk%*ZDBwvo5lAeARwW zK#81}>s8ZXcOCA*Xte@phO=TEcN@IL9mNGWB}!?

G#gyi>r51| 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

r1J3U-4XCjstPpvf#OdtjVyvB87 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 H&-4EPW+Y#t literal 0 HcmV?d00001 diff --git a/Docs/gui.png b/Docs/gui.png index 0cf5d191747859472140c95f3ce1a12a78f68755..580607825be873bcfbe8f5f0cd62f223386594bd 100644 GIT binary patch literal 36067 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 Thup2fxiCdpRhgXYcf9^DX=#Zo literal 35779 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 UK7rEkgPTC)q?9DHZW=xMKY2mYL;wH) diff --git a/GUI/DataManager.cs b/GUI/DataManager.cs index 4b7b91b..b1e7787 100644 --- a/GUI/DataManager.cs +++ b/GUI/DataManager.cs @@ -96,7 +96,7 @@ public void loadExcel(Program.Options options) mCSharp = new CSDefineGenerator(excelPath, excel, options.ExcludePrefix); //-- 导出JSON - mJson = new JsonExporter(excel, options.Lowcase, options.ExportArray, options.DateFormat, options.ForceSheetName, header, options.ExcludePrefix); + mJson = new JsonExporter(excel, options.Lowcase, options.ExportArray, options.DateFormat, options.ForceSheetName, header, options.ExcludePrefix, options.CellJson); } } } diff --git a/GUI/MainForm.Designer.cs b/GUI/MainForm.Designer.cs index 683f87a..fc7ae33 100644 --- a/GUI/MainForm.Designer.cs +++ b/GUI/MainForm.Designer.cs @@ -49,6 +49,7 @@ private void InitializeComponent() { this.pictureBoxExcel = new System.Windows.Forms.PictureBox(); this.labelExcelFile = new System.Windows.Forms.Label(); this.groupBox1 = new System.Windows.Forms.GroupBox(); + this.textBoxExculdePrefix = new System.Windows.Forms.TextBox(); this.comboBoxSheetName = new System.Windows.Forms.ComboBox(); this.comboBoxDateFormat = new System.Windows.Forms.ComboBox(); this.btnReimport = new System.Windows.Forms.Button(); @@ -60,7 +61,7 @@ private void InitializeComponent() { this.tabPageJSON = new System.Windows.Forms.TabPage(); this.tabCSharp = new System.Windows.Forms.TabPage(); this.backgroundWorker = new System.ComponentModel.BackgroundWorker(); - this.textBoxExculdePrefix = new System.Windows.Forms.TextBox(); + this.checkBoxCellJson = new System.Windows.Forms.CheckBox(); label2 = new System.Windows.Forms.Label(); label1 = new System.Windows.Forms.Label(); label4 = new System.Windows.Forms.Label(); @@ -86,7 +87,7 @@ private void InitializeComponent() { // label2.Location = new System.Drawing.Point(6, 49); label2.Name = "label2"; - label2.Size = new System.Drawing.Size(77, 12); + label2.Size = new System.Drawing.Size(102, 12); label2.TabIndex = 1; label2.Text = "Encoding:"; label2.TextAlign = System.Drawing.ContentAlignment.MiddleRight; @@ -94,7 +95,7 @@ private void InitializeComponent() { // label1 // label1.AutoSize = true; - label1.Location = new System.Drawing.Point(6, 23); + label1.Location = new System.Drawing.Point(31, 23); label1.Name = "label1"; label1.Size = new System.Drawing.Size(77, 12); label1.TabIndex = 1; @@ -105,7 +106,7 @@ private void InitializeComponent() { // label4.Location = new System.Drawing.Point(6, 75); label4.Name = "label4"; - label4.Size = new System.Drawing.Size(77, 12); + label4.Size = new System.Drawing.Size(102, 12); label4.TabIndex = 6; label4.Text = "Lowcase:"; label4.TextAlign = System.Drawing.ContentAlignment.MiddleRight; @@ -114,7 +115,7 @@ private void InitializeComponent() { // label3.Location = new System.Drawing.Point(6, 101); label3.Name = "label3"; - label3.Size = new System.Drawing.Size(77, 12); + label3.Size = new System.Drawing.Size(102, 12); label3.TabIndex = 4; label3.Text = "Header:"; label3.TextAlign = System.Drawing.ContentAlignment.MiddleRight; @@ -123,7 +124,7 @@ private void InitializeComponent() { // label5.Location = new System.Drawing.Point(6, 127); label5.Name = "label5"; - label5.Size = new System.Drawing.Size(77, 12); + label5.Size = new System.Drawing.Size(102, 12); label5.TabIndex = 9; label5.Text = "Date Format:"; label5.TextAlign = System.Drawing.ContentAlignment.MiddleRight; @@ -132,11 +133,20 @@ private void InitializeComponent() { // label6.Location = new System.Drawing.Point(6, 153); label6.Name = "label6"; - label6.Size = new System.Drawing.Size(77, 12); + label6.Size = new System.Drawing.Size(102, 12); label6.TabIndex = 11; label6.Text = "SheetName:"; label6.TextAlign = System.Drawing.ContentAlignment.MiddleRight; // + // label7 + // + label7.Location = new System.Drawing.Point(6, 179); + label7.Name = "label7"; + label7.Size = new System.Drawing.Size(102, 12); + label7.TabIndex = 13; + label7.Text = "ExculdePrefix:"; + label7.TextAlign = System.Drawing.ContentAlignment.MiddleRight; + // // statusStrip // this.statusStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { @@ -268,7 +278,7 @@ private void InitializeComponent() { // this.splitContainer1.Panel2.Controls.Add(this.tabControlCode); this.splitContainer1.Size = new System.Drawing.Size(784, 494); - this.splitContainer1.SplitterDistance = 261; + this.splitContainer1.SplitterDistance = 288; this.splitContainer1.TabIndex = 5; // // flowLayoutPanel1 @@ -279,7 +289,7 @@ private void InitializeComponent() { this.flowLayoutPanel1.FlowDirection = System.Windows.Forms.FlowDirection.TopDown; this.flowLayoutPanel1.Location = new System.Drawing.Point(0, 0); this.flowLayoutPanel1.Name = "flowLayoutPanel1"; - this.flowLayoutPanel1.Size = new System.Drawing.Size(259, 492); + this.flowLayoutPanel1.Size = new System.Drawing.Size(286, 492); this.flowLayoutPanel1.TabIndex = 0; // // panelExcelDropBox @@ -291,7 +301,7 @@ private void InitializeComponent() { this.panelExcelDropBox.Location = new System.Drawing.Point(8, 8); this.panelExcelDropBox.Margin = new System.Windows.Forms.Padding(8); this.panelExcelDropBox.Name = "panelExcelDropBox"; - this.panelExcelDropBox.Size = new System.Drawing.Size(245, 212); + this.panelExcelDropBox.Size = new System.Drawing.Size(270, 176); this.panelExcelDropBox.TabIndex = 1; this.panelExcelDropBox.DragDrop += new System.Windows.Forms.DragEventHandler(this.panelExcelDropBox_DragDrop); this.panelExcelDropBox.DragEnter += new System.Windows.Forms.DragEventHandler(this.panelExcelDropBox_DragEnter); @@ -304,7 +314,7 @@ private void InitializeComponent() { this.flowLayoutPanel2.FlowDirection = System.Windows.Forms.FlowDirection.TopDown; this.flowLayoutPanel2.Location = new System.Drawing.Point(0, 0); this.flowLayoutPanel2.Name = "flowLayoutPanel2"; - this.flowLayoutPanel2.Size = new System.Drawing.Size(243, 210); + this.flowLayoutPanel2.Size = new System.Drawing.Size(268, 174); this.flowLayoutPanel2.TabIndex = 0; // // pictureBoxExcel @@ -312,7 +322,7 @@ private void InitializeComponent() { this.pictureBoxExcel.Image = global::excel2json.Properties.Resources.excel_64; this.pictureBoxExcel.Location = new System.Drawing.Point(3, 3); this.pictureBoxExcel.Name = "pictureBoxExcel"; - this.pictureBoxExcel.Size = new System.Drawing.Size(237, 100); + this.pictureBoxExcel.Size = new System.Drawing.Size(262, 130); this.pictureBoxExcel.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage; this.pictureBoxExcel.TabIndex = 0; this.pictureBoxExcel.TabStop = false; @@ -320,17 +330,17 @@ private void InitializeComponent() { // labelExcelFile // this.labelExcelFile.Font = new System.Drawing.Font("Microsoft YaHei", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.labelExcelFile.Location = new System.Drawing.Point(3, 106); + this.labelExcelFile.Location = new System.Drawing.Point(3, 136); this.labelExcelFile.Name = "labelExcelFile"; this.labelExcelFile.RightToLeft = System.Windows.Forms.RightToLeft.No; - this.labelExcelFile.Size = new System.Drawing.Size(237, 70); + this.labelExcelFile.Size = new System.Drawing.Size(260, 35); this.labelExcelFile.TabIndex = 1; this.labelExcelFile.Text = "Drop you .xlsx file here!"; this.labelExcelFile.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; // // groupBox1 // - this.groupBox1.AutoSize = true; + this.groupBox1.Controls.Add(this.checkBoxCellJson); this.groupBox1.Controls.Add(this.textBoxExculdePrefix); this.groupBox1.Controls.Add(label7); this.groupBox1.Controls.Add(label6); @@ -347,14 +357,21 @@ private void InitializeComponent() { this.groupBox1.Controls.Add(this.comboBoxEncoding); this.groupBox1.Controls.Add(this.comboBoxType); this.groupBox1.Dock = System.Windows.Forms.DockStyle.Fill; - this.groupBox1.Location = new System.Drawing.Point(8, 236); + this.groupBox1.Location = new System.Drawing.Point(8, 200); this.groupBox1.Margin = new System.Windows.Forms.Padding(8); this.groupBox1.Name = "groupBox1"; - this.groupBox1.Size = new System.Drawing.Size(245, 248); + this.groupBox1.Size = new System.Drawing.Size(270, 280); this.groupBox1.TabIndex = 3; this.groupBox1.TabStop = false; this.groupBox1.Text = "Options"; // + // textBoxExculdePrefix + // + this.textBoxExculdePrefix.Location = new System.Drawing.Point(114, 180); + this.textBoxExculdePrefix.Name = "textBoxExculdePrefix"; + this.textBoxExculdePrefix.Size = new System.Drawing.Size(150, 21); + this.textBoxExculdePrefix.TabIndex = 14; + // // comboBoxSheetName // this.comboBoxSheetName.DisplayMember = "0"; @@ -363,7 +380,7 @@ private void InitializeComponent() { this.comboBoxSheetName.Items.AddRange(new object[] { "Yes", "No"}); - this.comboBoxSheetName.Location = new System.Drawing.Point(89, 150); + this.comboBoxSheetName.Location = new System.Drawing.Point(114, 153); this.comboBoxSheetName.Name = "comboBoxSheetName"; this.comboBoxSheetName.Size = new System.Drawing.Size(150, 20); this.comboBoxSheetName.TabIndex = 10; @@ -376,7 +393,7 @@ private void InitializeComponent() { this.comboBoxDateFormat.Items.AddRange(new object[] { "yyyy/MM/dd", "yyyy/MM/dd hh:mm:ss"}); - this.comboBoxDateFormat.Location = new System.Drawing.Point(89, 124); + this.comboBoxDateFormat.Location = new System.Drawing.Point(114, 127); this.comboBoxDateFormat.Name = "comboBoxDateFormat"; this.comboBoxDateFormat.Size = new System.Drawing.Size(150, 20); this.comboBoxDateFormat.TabIndex = 8; @@ -384,7 +401,7 @@ private void InitializeComponent() { // // btnReimport // - this.btnReimport.Location = new System.Drawing.Point(68, 205); + this.btnReimport.Location = new System.Drawing.Point(85, 238); this.btnReimport.Name = "btnReimport"; this.btnReimport.Size = new System.Drawing.Size(75, 23); this.btnReimport.TabIndex = 7; @@ -400,7 +417,7 @@ private void InitializeComponent() { this.comboBoxLowcase.Items.AddRange(new object[] { "Yes", "No"}); - this.comboBoxLowcase.Location = new System.Drawing.Point(89, 72); + this.comboBoxLowcase.Location = new System.Drawing.Point(114, 75); this.comboBoxLowcase.Name = "comboBoxLowcase"; this.comboBoxLowcase.Size = new System.Drawing.Size(150, 20); this.comboBoxLowcase.TabIndex = 5; @@ -416,7 +433,7 @@ private void InitializeComponent() { "4", "5", "6"}); - this.comboBoxHeader.Location = new System.Drawing.Point(89, 98); + this.comboBoxHeader.Location = new System.Drawing.Point(114, 101); this.comboBoxHeader.Name = "comboBoxHeader"; this.comboBoxHeader.Size = new System.Drawing.Size(150, 20); this.comboBoxHeader.TabIndex = 3; @@ -427,7 +444,7 @@ private void InitializeComponent() { this.comboBoxEncoding.DisplayMember = "0"; this.comboBoxEncoding.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.comboBoxEncoding.FormattingEnabled = true; - this.comboBoxEncoding.Location = new System.Drawing.Point(89, 46); + this.comboBoxEncoding.Location = new System.Drawing.Point(114, 49); this.comboBoxEncoding.Name = "comboBoxEncoding"; this.comboBoxEncoding.Size = new System.Drawing.Size(150, 20); this.comboBoxEncoding.TabIndex = 0; @@ -441,7 +458,7 @@ private void InitializeComponent() { this.comboBoxType.Items.AddRange(new object[] { "Array", "Dict Object"}); - this.comboBoxType.Location = new System.Drawing.Point(89, 20); + this.comboBoxType.Location = new System.Drawing.Point(114, 23); this.comboBoxType.Name = "comboBoxType"; this.comboBoxType.Size = new System.Drawing.Size(150, 20); this.comboBoxType.TabIndex = 0; @@ -455,7 +472,7 @@ private void InitializeComponent() { this.tabControlCode.Location = new System.Drawing.Point(0, 0); this.tabControlCode.Name = "tabControlCode"; this.tabControlCode.SelectedIndex = 0; - this.tabControlCode.Size = new System.Drawing.Size(517, 492); + this.tabControlCode.Size = new System.Drawing.Size(490, 492); this.tabControlCode.TabIndex = 0; // // tabPageJSON @@ -463,7 +480,7 @@ private void InitializeComponent() { this.tabPageJSON.Location = new System.Drawing.Point(4, 22); this.tabPageJSON.Name = "tabPageJSON"; this.tabPageJSON.Padding = new System.Windows.Forms.Padding(3); - this.tabPageJSON.Size = new System.Drawing.Size(509, 466); + this.tabPageJSON.Size = new System.Drawing.Size(482, 466); this.tabPageJSON.TabIndex = 0; this.tabPageJSON.Text = "JSON"; this.tabPageJSON.UseVisualStyleBackColor = true; @@ -473,7 +490,7 @@ private void InitializeComponent() { this.tabCSharp.Location = new System.Drawing.Point(4, 22); this.tabCSharp.Name = "tabCSharp"; this.tabCSharp.Padding = new System.Windows.Forms.Padding(3); - this.tabCSharp.Size = new System.Drawing.Size(509, 466); + this.tabCSharp.Size = new System.Drawing.Size(482, 466); this.tabCSharp.TabIndex = 1; this.tabCSharp.Text = "C#"; this.tabCSharp.UseVisualStyleBackColor = true; @@ -483,21 +500,15 @@ private void InitializeComponent() { this.backgroundWorker.DoWork += new System.ComponentModel.DoWorkEventHandler(this.backgroundWorker_DoWork); this.backgroundWorker.RunWorkerCompleted += new System.ComponentModel.RunWorkerCompletedEventHandler(this.backgroundWorker_RunWorkerCompleted); // - // label7 + // checkBoxCellJson // - label7.Location = new System.Drawing.Point(6, 179); - label7.Name = "label7"; - label7.Size = new System.Drawing.Size(77, 12); - label7.TabIndex = 13; - label7.Text = "Exculde Prefix:"; - label7.TextAlign = System.Drawing.ContentAlignment.MiddleRight; - // - // textBoxExculdePrefix - // - this.textBoxExculdePrefix.Location = new System.Drawing.Point(89, 177); - this.textBoxExculdePrefix.Name = "textBoxExculdePrefix"; - this.textBoxExculdePrefix.Size = new System.Drawing.Size(150, 21); - this.textBoxExculdePrefix.TabIndex = 14; + this.checkBoxCellJson.AutoSize = true; + this.checkBoxCellJson.Location = new System.Drawing.Point(54, 207); + this.checkBoxCellJson.Name = "checkBoxCellJson"; + this.checkBoxCellJson.Size = new System.Drawing.Size(186, 16); + this.checkBoxCellJson.TabIndex = 15; + this.checkBoxCellJson.Text = "Convert Json String in Cell"; + this.checkBoxCellJson.UseVisualStyleBackColor = true; // // MainForm // @@ -521,7 +532,6 @@ private void InitializeComponent() { ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit(); this.splitContainer1.ResumeLayout(false); this.flowLayoutPanel1.ResumeLayout(false); - this.flowLayoutPanel1.PerformLayout(); this.panelExcelDropBox.ResumeLayout(false); this.flowLayoutPanel2.ResumeLayout(false); ((System.ComponentModel.ISupportInitialize)(this.pictureBoxExcel)).EndInit(); @@ -564,5 +574,6 @@ private void InitializeComponent() { private System.Windows.Forms.ToolStripButton btnCopyCSharp; private System.Windows.Forms.ToolStripButton btnSaveCSharp; private System.Windows.Forms.TextBox textBoxExculdePrefix; + private System.Windows.Forms.CheckBox checkBoxCellJson; } } \ No newline at end of file diff --git a/GUI/MainForm.cs b/GUI/MainForm.cs index 1adc083..acd63ff 100644 --- a/GUI/MainForm.cs +++ b/GUI/MainForm.cs @@ -144,6 +144,7 @@ private void loadExcelAsync(string path) options.DateFormat = this.comboBoxDateFormat.Text; options.ForceSheetName = this.comboBoxSheetName.SelectedIndex == 0; options.ExcludePrefix = this.textBoxExculdePrefix.Text; + options.CellJson = this.checkBoxCellJson.Checked; //-- start import this.backgroundWorker.RunWorkerAsync(options); diff --git a/GUI/MainForm.resx b/GUI/MainForm.resx index 2db9a0b..ed926af 100644 --- a/GUI/MainForm.resx +++ b/GUI/MainForm.resx @@ -135,15 +135,15 @@ False + + False + 127, 17 17, 17 - - False - 241, 17 diff --git a/JsonExporter.cs b/JsonExporter.cs index 9fb4ec3..1c7b233 100644 --- a/JsonExporter.cs +++ b/JsonExporter.cs @@ -25,17 +25,17 @@ public string context { /// 构造函数:完成内部数据创建 /// /// ExcelLoader Object - public JsonExporter(ExcelLoader excel, bool lowcase, bool exportArray, string dateFormat, bool forceSheetName, int headerRows, string excludePrefix) + public JsonExporter(ExcelLoader excel, bool lowcase, bool exportArray, string dateFormat, bool forceSheetName, int headerRows, string excludePrefix, bool cellJson) { - mHeaderRows = headerRows-1; + mHeaderRows = headerRows - 1; List validSheets = new List(); for (int i = 0; i < excel.Sheets.Count; i++) { DataTable sheet = excel.Sheets[i]; - + // 过滤掉包含特定前缀的表单 string sheetName = sheet.TableName; - if (excludePrefix.Length>0 && sheetName.StartsWith(excludePrefix)) + if (excludePrefix.Length > 0 && sheetName.StartsWith(excludePrefix)) continue; if (sheet.Columns.Count > 0 && sheet.Rows.Count > 0) @@ -52,7 +52,7 @@ public JsonExporter(ExcelLoader excel, bool lowcase, bool exportArray, string da { // single sheet //-- convert to object - object sheetValue = convertSheet(validSheets[0], exportArray, lowcase, excludePrefix); + object sheetValue = convertSheet(validSheets[0], exportArray, lowcase, excludePrefix, cellJson); //-- convert to json string mContext = JsonConvert.SerializeObject(sheetValue, jsonSettings); @@ -63,7 +63,7 @@ public JsonExporter(ExcelLoader excel, bool lowcase, bool exportArray, string da Dictionary data = new Dictionary(); foreach (var sheet in validSheets) { - object sheetValue = convertSheet(sheet, exportArray, lowcase, excludePrefix); + object sheetValue = convertSheet(sheet, exportArray, lowcase, excludePrefix, cellJson); data.Add(sheet.TableName, sheetValue); } @@ -72,15 +72,15 @@ public JsonExporter(ExcelLoader excel, bool lowcase, bool exportArray, string da } } - private object convertSheet(DataTable sheet, bool exportArray, bool lowcase, string excludePrefix) + private object convertSheet(DataTable sheet, bool exportArray, bool lowcase, string excludePrefix, bool cellJson) { if (exportArray) - return convertSheetToArray(sheet, lowcase, excludePrefix); + return convertSheetToArray(sheet, lowcase, excludePrefix, cellJson); else - return convertSheetToDict(sheet, lowcase, excludePrefix); + return convertSheetToDict(sheet, lowcase, excludePrefix, cellJson); } - private object convertSheetToArray(DataTable sheet, bool lowcase, string excludePrefix) + private object convertSheetToArray(DataTable sheet, bool lowcase, string excludePrefix, bool cellJson) { List values = new List(); @@ -90,7 +90,7 @@ private object convertSheetToArray(DataTable sheet, bool lowcase, string exclude DataRow row = sheet.Rows[i]; values.Add( - convertRowToDict(sheet, row, lowcase, firstDataRow, excludePrefix) + convertRowToDict(sheet, row, lowcase, firstDataRow, excludePrefix, cellJson) ); } @@ -100,7 +100,7 @@ private object convertSheetToArray(DataTable sheet, bool lowcase, string exclude /// /// 以第一列为ID,转换成ID->Object的字典对象 /// - private object convertSheetToDict(DataTable sheet, bool lowcase, string excludePrefix) + private object convertSheetToDict(DataTable sheet, bool lowcase, string excludePrefix, bool cellJson) { Dictionary importData = new Dictionary(); @@ -113,7 +113,7 @@ private object convertSheetToDict(DataTable sheet, bool lowcase, string excludeP if (ID.Length <= 0) ID = string.Format("row_{0}", i); - var rowObject = convertRowToDict(sheet, row, lowcase, firstDataRow, excludePrefix); + var rowObject = convertRowToDict(sheet, row, lowcase, firstDataRow, excludePrefix, cellJson); // 多余的字段 // rowObject[ID] = ID; importData[ID] = rowObject; @@ -125,7 +125,7 @@ private object convertSheetToDict(DataTable sheet, bool lowcase, string excludeP /// /// 把一行数据转换成一个对象,每一列是一个属性 /// - private Dictionary convertRowToDict(DataTable sheet, DataRow row, bool lowcase, int firstDataRow, string excludePrefix) + private Dictionary convertRowToDict(DataTable sheet, DataRow row, bool lowcase, int firstDataRow, string excludePrefix, bool cellJson) { var rowData = new Dictionary(); int col = 0; @@ -138,6 +138,24 @@ private Dictionary convertRowToDict(DataTable sheet, DataRow row object value = row[column]; + // 尝试将单元格字符串转换成 Json Array 或者 Json Object + if (cellJson) + { + string cellText = value.ToString().Trim(); + if (cellText.StartsWith("[") || cellText.StartsWith("{")) + { + try + { + object cellJsonObj = JsonConvert.DeserializeObject(cellText); + if (cellJsonObj != null) + value = cellJsonObj; + } + catch (Exception exp) + { + } + } + } + if (value.GetType() == typeof(System.DBNull)) { value = getColumnDefault(sheet, column, firstDataRow); diff --git a/Program.Options.cs b/Program.Options.cs index 2615a2a..6b22c5a 100644 --- a/Program.Options.cs +++ b/Program.Options.cs @@ -79,6 +79,12 @@ public string ExcludePrefix { get; set; } + + [Option('l', "cell_json", Required = false, DefaultValue = false, HelpText = "convert json string in cell")] + public bool CellJson { + get; + set; + } } } } diff --git a/Program.cs b/Program.cs index 86159a9..3bae395 100644 --- a/Program.cs +++ b/Program.cs @@ -106,7 +106,7 @@ private static void Run(Options options) ExcelLoader excel = new ExcelLoader(excelPath, header); //-- export - JsonExporter exporter = new JsonExporter(excel, options.Lowcase, options.ExportArray, dateFormat, options.ForceSheetName, header, options.ExcludePrefix); + JsonExporter exporter = new JsonExporter(excel, options.Lowcase, options.ExportArray, dateFormat, options.ForceSheetName, header, options.ExcludePrefix, options.CellJson); exporter.SaveToFile(exportPath, cd); //-- 生成C#定义文件 diff --git a/README.md b/README.md index 144b650..09db024 100644 --- a/README.md +++ b/README.md @@ -12,6 +12,12 @@ * -a 序列化成数组 * -d, --date:指定日期格式化字符串,例如:dd / MM / yyy hh: mm:ss * -s 序列化时强制带上sheet name,即使只有一个sheet +* -exclude_prefix: 导出时,排除掉包含指定前缀的表单和列,例如:-exclude_prefix # +* -cell_json:自动识别单元格中的Json对象和Json数组,Default:false + + +![Excel](./Docs/excel.png) +![GUI](./Docs/gui.png) +![CMd](./Docs/cmd.png) -![COVER](https://neil3d.github.io/assets/img/excel2json/cover.jpg)