Rechercher : dans
Par :

Scilab, fonction mopen

Dernière réponse le 15 jui 2009 à 15:41:53 Bazoukka, le 10 jui 2009 à 10:14:39 
 Signaler ce message aux modérateurs

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

Configuration: Windows XP Internet Explorer 6.0

Meilleures réponses pour « Scilab, fonction mopen » dans :
Faire fonctionner une application Windows sous Linux avec Wine VoirWine est un logiciel permettant de faire fonctionner certaines applications Windows sous Linux. Contrairement à VMWare ou VirtualBox, Wine n'émule pas un PC complet, mais seulement les API Win32 (appels système Windows). L'émulation n'est pas...
Gérer les fonctionnalités sous vista VoirSous Vista, comme il est possible sous Xp, vous pouvez activer ou désactiver certaines fonctionnalités suivant si vous utilisez les jeux, une imprimante, etc... Accéder aux fonctionnalités de Windows Fonctionnalités Accéder aux...
Vérifier le fonctionnement de son alimentation VoirOn peut tester le fonctionnement d'une alimentation en procédant comme ceci : Mettre l'alimentation sur OFF (derrière la tour). Débrancher celle-ci du secteur et de la carte mère (il est préférable de l'enlever entièrement de la tour en...
Télécharger Scilab VoirScilab est un logiciel libre de calcul scientifique développé par des chercheurs de l’INRIA et de l’ENPC ; il s'agit d'un "équivalent" gratuit de Matlab®. Contrairement à GNU Octave, la syntaxe est cependant parfois quelque peu différente et quelques...
PHP - Les fonctions VoirLa notion de fonction On appelle fonction un sous-programme qui permet d'effectuer un ensemble d'instructions par simple appel de la fonction dans le corps du programme principal. Les fonctions permettent d'exécuter dans plusieurs parties du...
Javascript - Les fonctions VoirLa notion de fonction On appelle fonction un sous-programme qui permet d'effectuer un ensemble d'instructions par simple appel de la fonction dans le corps du programme principal. Cette notion de sous-programme est généralement appelée fonction...
Fonctionnement du Bluetooth VoirFonctionnement Le standard Bluetooth, à la manière du WiFi utilise la technique FHSS (Frequency Hopping Spread Spectrum, en français étalement de spectre par saut de fréquence ou étalement de spectre par évasion de fréquence), consistant à découper...

1

Bazoukka, le 10 jui 2009 à 12:44:50

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.

Répondre à Bazoukka

2

 Bazoukka, le 15 jui 2009 à 15:41:53

Pb résolu,
j'avais un caractére spéciale (ie é) des le chemin que je concaténais!!
il n'aime pas ca du tout!
pour débugger, j'ai regardé la longueur de mes deux chaine qui semblaient identiques, puis j'ai regardé le code ASCII de chacune d'elles.
voili, voila.

Répondre à Bazoukka