Pergunta

Eu tenho esse ChucK código:

"examples/vento.txt" => string filename;
FileIO fio;

// open a file
fio.open(filename, FileIO.READ);

// ensure it's ok
if(!fio.good()) {
    cherr <= "can't open file: " <= filename <= " for reading..." <= IO.newline();
    me.exit();
}

fio.readLine() => string velocity;

fio.readLine() => string direction;

O arquivo de texto contém:

10
12

(ele é atualizado com python a cada minuto)

Eu quero converter a velocidade e a direção para int (ou melhor, float).

Como posso fazer isso?

Foi útil?

Solução

Utilização atoi e atof no Std a biblioteca.Vamos dizer que você deseja converter de 0-127 MIDI (velocidade) para um float entre 0 e 1,0 (muito mais conveniente para a unidade de geradores):

Std.atoi(fio.readLine()) => int midi_velocity;
midi_velocity/127.0 => float velocity;
<<< velocity >>>;

deve imprimir 0.078740 :(float) para uma entrada de 10.

Ou se você quer apenas ir direto para float:

Std.atof(fio.readLine()) => float velocity;
<<< velocity >>>;

que imprime 10.000000 :(float).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top