12345678910111213141516171819202122232425262728293031323334353637 |
- const { createWriteStream, readdir, readFile } = require('fs')
- const { join } = require('path')
- const { promisify } = require('util')
- const { parseString } = require('xml2js')
- !async function (){
- const logs = createWriteStream(join(__dirname, 'logs.txt'))
- // console.log(logs.write)
- const files = await promisify(readdir)(join(__dirname, 'colexiu-xmls'))
- for (const file of files) {
- if (file.endsWith('.xml')) {
- try {
- console.log(file)
- const content = await promisify(readFile)(join(__dirname, 'colexiu-xmls', file))
- const json = await promisify(parseString)(content.toString())
- let times = []
- for (let i = 0; i < json['score-partwise'].part[0].measure.length; i++) {
- if (i > 1) {
- break
- }
- const measure = json['score-partwise'].part[0].measure[i]
- let time = 0
- for (let j = 0; j < measure.note.length; j++) {
- time = time + +measure.note[j].duration[0]
- }
- times.push(time)
- }
- if (times[0] !== times[1]) {
- logs.write(`${file} 是弱起\n`)
- }
- console.log(times)
- } catch (error) {
- logs.write(`${file} 解析失败\n`)
- }
- }
- }
- }()
|