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
A voir également:
- Mopen scilab
- Scilab - Télécharger - Édition & Programmation
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.