swf go
1.0.0
모듈 식 충격파 플래시 리더, 파서 및 디코더가 이동합니다.
Kelvyne/SWF와 비교하여 스프라이트를 포함한 유형 및 태그 내용도 디코딩합니다.
package example
import (
"errors"
"git.gammaspectra.live/WeebDataHoarder/swf-go"
"git.gammaspectra.live/WeebDataHoarder/swf-go/tag"
"io"
"os"
)
func main () {
f , err := os . Open ( "flash.swf" )
if err != nil {
panic ( err )
}
defer f . Close ()
reader , err := swf . NewReader ( f )
if err != nil {
panic ( err )
}
defer reader . Close ()
for {
t , err := reader . Tag ()
if err != nil {
if errors . Is ( err , tag . ErrUnknownTag ) {
//unknown tag, cannot decode
continue
}
if errors . Is ( err , io . EOF ) {
//file is completely read
panic ( "EOF reached without End tag" )
}
panic ( err )
}
//Handle tags
switch t .( type ) {
case * tag. End :
//end of file
break
}
}
}