Octave не может найти файл даже по правильному пути

#windows #window #octave #gnu

Вопрос:

Я пишу простую программу octave, но я не могу запустить ее через octave-cli
Я поместил octave в переменную среды, но она по-прежнему не может ее запустить
Вот команды, которые я набираю в octave-cli, они показывают, что у меня нет имени файла ‘question1.m’, нос ls помощью команды он показывает мне, что у него есть файл в пути.

 GNU Octave, version 6.3.0
Copyright (C) 2021 The Octave Project Developers.
This is free software; see the source code for copying conditions.
There is ABSOLUTELY NO WARRANTY; not even for MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE.  For details, type 'warranty'.

Octave was configured for "x86_64-w64-mingw32".

Additional information about Octave is available at https://www.octave.org/.

Please contribute if you find this software useful.
For more information, visit https://www.octave.org/get-involved.html

Read https://www.octave.org/bugs.html to learn how to submit bug reports.
For information about changes from previous versions, type 'news'.

octave:1> pwd
ans = C:Users6720OneDrive?﹝GitHuboctave-lablab03
octave:2> ls
 磁碟區 C 中的磁碟沒有標籤。
 磁碟區序號:  76E5-73EB

 C:Users6720OneDrive文档GitHuboctave-lablab03 的目錄

[.]             .gitignore      ie-lab-3.pdf    IE_Encode.m     IE_Sampling.m   question2.m     s3.m
[..]            demo.wav        IE_Decode.m     IE_Quant.m      question1.m     s2.m
              11 個檔案       1,887,210 位元組
               2 個目錄  76,459,147,264 位元組可用
octave:3> question1
error: no such file, 'C:Users6720OneDrive??GitHuboctave-lablab03question1.m'
octave:4>
 

Вот мой программный код:

 # question1.m
[x, fs] = audioread('demo.wav');
m = IE_Sampling(x, fs, 4000);
m = IE_Sampling(x, fs, 80000);
# When M = 4
M = 4;
[s, lv] =IE_Quant(m, M);
subplot(3,1,1);
plot(s,"b;s[n];",m,"k;m[n];")
xlim([0,1000])
title("s[n] and m[n] with M = 4")
# When M = 8
M = 8;
[s, lv] =IE_Quant(m, M);
subplot(3,1,2);
plot(s,"b;s[n];",m,"k;m[n];")
xlim([0,1000])
title("s[n] and m[n] with M = 8")
# When M = 16
M = 16;
[s, lv] =IE_Quant(m, M);
subplot(3,1,3);
plot(s,"b;s[n];",m,"k;m[n];")
xlim([0,1000])
title("s[n] and m[n] with M = 16")
 

Кто-нибудь может сказать мне, как это решить?

Комментарии:

1. Попробуйте удалить все китайские иероглифы из вашего имени пути. Похоже, что это то, что отключает Octave. Octave использует UTF-8, как и все нормальные программы, но Windows построена вокруг UTF-16 и не всегда правильно обрабатывает UTF-8. Таким образом, эта проблема может быть проблемой при взаимодействии между Octave и Windows при работе с символами, отличными от ASCII, в именах путей к файлам.

2. проблема исправлена ty.

3. Также, пожалуйста, сообщите об этом как об ошибке сопровождающим Octave по адресу savannah.gnu.org/bugs/?group=octave . Они активно пытаются исправить эту файловую систему Unicode.