Scilab, fonction mopen
Bazoukka
Messages postés
8
Statut
Membre
-
Bazoukka Messages postés 8 Statut Membre -
Bazoukka Messages postés 8 Statut Membre -
Bonjour,
Je dois réaliser un programme Scilab qui doit me permettre d'utiliser les données d'un fichier .txt.
Les premières lignes (commentées, chaîne de caractères) sont associées à une variable 'Grandeurs' et les données numériques (matrice 20*100, voire plus!) à une variables 'Mesures'.
Mon programme est :
//Initialisation
fname1=fname;
ext1=ext;
chemin=' ';
[fpath, fname, ext]=open_text(chemin, '*.txt', 'Fichier Brut *.txt');
name1=fpath+'\'+fname+ext
//name2=string(fullfile(fpath,fname+ext))
//name3=fullfile(fpath,fname+ext)
name4='D:\Documents\bauda\Données\Données_Analogic.txt'
//ofname=mopen(fname+ext,'r');
ofname=mopen(name3,'r');
if ~isempty(name3)
Gr=mgetl(ofname);
[nl,nc]=size(Gr);
grandeurs=Gr(1,:)
end
mclose(name3);
Mon probléme est que la seule maniére de le faire marcher correctement est avec 'name4' alors que je souhaite éxécuter ce fichier en relation avec un autre.
Il ne faut donc pas que je rentre explicitement un chaîne avec le chemin absolu de mon fichier à lire.
Merci d'avance de votre aide.
Bazoukka
Je dois réaliser un programme Scilab qui doit me permettre d'utiliser les données d'un fichier .txt.
Les premières lignes (commentées, chaîne de caractères) sont associées à une variable 'Grandeurs' et les données numériques (matrice 20*100, voire plus!) à une variables 'Mesures'.
Mon programme est :
//Initialisation
fname1=fname;
ext1=ext;
chemin=' ';
[fpath, fname, ext]=open_text(chemin, '*.txt', 'Fichier Brut *.txt');
name1=fpath+'\'+fname+ext
//name2=string(fullfile(fpath,fname+ext))
//name3=fullfile(fpath,fname+ext)
name4='D:\Documents\bauda\Données\Données_Analogic.txt'
//ofname=mopen(fname+ext,'r');
ofname=mopen(name3,'r');
if ~isempty(name3)
Gr=mgetl(ofname);
[nl,nc]=size(Gr);
grandeurs=Gr(1,:)
end
mclose(name3);
Mon probléme est que la seule maniére de le faire marcher correctement est avec 'name4' alors que je souhaite éxécuter ce fichier en relation avec un autre.
Il ne faut donc pas que je rentre explicitement un chaîne avec le chemin absolu de mon fichier à lire.
Merci d'avance de votre aide.
Bazoukka
Configuration: Windows XP Internet Explorer 6.0
A voir également:
- Mopen scilab
- Scilab - Télécharger - Édition & Programmation
- Aide Scilab : plot de la fonction porte - Forum Logiciels
- Installation scilab 2026 sur pc avec Windows 11 home - Forum Windows
2 réponses
La fonction open_text() est peut-être utile, la voila donc:
// [fpath, fname, ext]=open_text(chemin, titre, specf)
// chemin : default acces
// specf : extension's file
//
// fpath : path's file
// fname : name's file
// ext : extension's file
//
function [fpath, fname, ext]=open_text(chemin, specf, titre)
rhs=argn(2);
if rhs<2
specf='*.txt';
chemin='';
end
if rhs<3
titre='Chercher un fichier';
end
// if rhs<3
// titre='Fichier_essai';
//
// end
[fname2, fpath2]=uigetfile(specf,chemin,titre,%t)
if ~isempty(fname2)
fpath=fpath2;
wh=strindex(fname2,'.');
if isempty(wh)
wh=length(fname2)+1;
end
fname=part(fname2, 1:wh-1);
ext=part(fname2, wh:length(fname2));
else
fname=[];
ext=[];
end
// nom=fpath+'\'+fname+ext
endfunction
Donner moi des pistes svp.
// [fpath, fname, ext]=open_text(chemin, titre, specf)
// chemin : default acces
// specf : extension's file
//
// fpath : path's file
// fname : name's file
// ext : extension's file
//
function [fpath, fname, ext]=open_text(chemin, specf, titre)
rhs=argn(2);
if rhs<2
specf='*.txt';
chemin='';
end
if rhs<3
titre='Chercher un fichier';
end
// if rhs<3
// titre='Fichier_essai';
//
// end
[fname2, fpath2]=uigetfile(specf,chemin,titre,%t)
if ~isempty(fname2)
fpath=fpath2;
wh=strindex(fname2,'.');
if isempty(wh)
wh=length(fname2)+1;
end
fname=part(fname2, 1:wh-1);
ext=part(fname2, wh:length(fname2));
else
fname=[];
ext=[];
end
// nom=fpath+'\'+fname+ext
endfunction
Donner moi des pistes svp.