package Ġchar lie . lc se tools . sn x util . parsed Ċ Ċ import Ġchar lie . lc se tools . sn x util . raw . read SN X Script Ċ import Ġchar lie . lc se tools . sn x util . raw . write SN X Script Ċ import Ġorg . junit . Test Ċ import Ġjava . nio . channels . File Channel Ċ import Ġjava . nio . file . Files Ċ import Ġjava . nio . file . Paths Ċ import Ġjava . nio . file . Standard Open Option Ċ Ċ /** Ċ Ġ* Ġ@ author ĠChar lie ĠJ iang Ċ Ġ* Ġ* Ċ Ġ* Ġ@ since Ġrv 1 Ċ Ġ*/ Ċ class ĠLC SE SN X Parser Kt Test Ġ{ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġparse Raw SN X Script Test () Ġ{ ĊĠĠĠĠĠĠĠ ĠFile Channel . open ( Paths . get (""" D :\ æĹł éĻĲ éĮ ¬ å§ ¦ \ m ug en \ original SN X \ AG O 0 1 _ 0 1 . sn x "" ")). use Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġoriginal Buf Ġ= Ġit . map ( File Channel . Map Mode . READ _ ONLY , Ġ 0 , Ġit . size ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġoriginal Content Ġ= ĠByteArray ( it . size (). toInt ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoriginal Buf [ original Content , Ġ 0 , Ġit . size (). toInt ()] ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoriginal Buf . position ( 0 ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġparsed SN X Ġ= Ġparse Raw SN X Script ( read SN X Script ( original Buf )) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPaths . get (""" D :\ æĹł éĻĲ éĮ ¬ å§ ¦ \ m ug en \ AG O 0 1 _ 0 1 . sn x "" "). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! Files . exists ( this )) ĠFiles . create File ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFile Channel . open ( this , ĠStandard Open Option . TRUNC ATE _ EXIST ING , ĠStandard Open Option . WRITE ). use Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . write ( write SN X Script ( generate Raw SN X Script ( parsed SN X ))) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }