IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

lire une base de données


Sujet :

MATLAB

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Inscrit en
    Décembre 2010
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Décembre 2010
    Messages : 127
    Points : 30
    Points
    30
    Par défaut lire une base de données
    J'ai crée une base des données et lorsque je veux la lire un message d'erreur se produit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    ??? Error using ==> textscan
    Invalid file identifier.  Use fopen to generate a valid file identifier.
     
    Error in ==> ReadDataBase at 4
    InputText = textscan(fid, '%s', 1, 'delimiter', '\n');
    voici le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    function [DirName, WinSize, EffSize, Classes, lbls, files, Pos] = ReadDataBase(fileDB)
     
    fid = fopen(fileDB, 'r');
    InputText = textscan(fid, '%s', 1, 'delimiter', '\n');
    [DirName, str] = strtok(InputText{1}{1},'-');
    Val = str2num(str(1,2:size(str,2)));
    WinSize = Val(1);
    EffSize = Val(2);
    Comment je peux le corriger SVP

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 53 165
    Points
    53 165
    Par défaut
    MATLAB ne trouve pas le fichier car il est probable que tu ne lui passes pas le chemin complet du fichier (nom de dossier + nom de fichier).

    Tu peux aussi ajouter un test au début de ta fonction pour gérer cette erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    function [DirName, WinSize, EffSize, Classes, lbls, files, Pos] = ReadDataBase(fileDB)
     
    if exist(fileDB,'file')~=2
     
       [fname,pname] = uigetfile;
       if ~fname
          return
       end
     
       fileDB = fullfile(pname,fname);
     
    end
     
    fid = fopen(fileDB, 'r');
    ...
    C'est l'idée.
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

Discussions similaires

  1. Lire une base de donnée sqlite avec sql.js
    Par clo_ljk dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 12/08/2014, 13h26
  2. Réponses: 3
    Dernier message: 04/08/2010, 14h05
  3. Lire une base de données access 2007 avec access 2003
    Par gblanchard dans le forum Runtime
    Réponses: 6
    Dernier message: 08/05/2007, 02h59
  4. Réponses: 10
    Dernier message: 10/02/2006, 14h23
  5. lire la structure d'une base de données
    Par ilyassou dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 31/08/2005, 07h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo