Did you try fscanfMat? It could work

On 21/10/2013 10:30, Carrico, Paul wrote:

Thanks

It works for small matrix ... but troubles with huge ones .... L

*De :*users [mailto:users-boun...@lists.scilab.org] *De la part de* Serge Steer
*Envoyé :* lundi 21 octobre 2013 16:20
*À :* International users mailing list for Scilab.
*Objet :* Re: [Scilab-users] Matrix of characters conversion

You can use evstr for that
example
M=["1     2   5.54"
        "3.45 8 -123"
        "0           -432.512  -0.435"]

-->evstr(M)
 ans  =

    1.      2.         5.54
    3.45    8.       - 123.
    0.    - 432.512  - 0.435

Serge

Le 21/10/2013 14:29, Carrico, Paul a écrit :

    Dear All

    How can I convert a matrix of characters into integers when the
    separator has different number of spaces ?

    The spaces come probably  from a printf format such as :
     printf("%10d\n",var)

    I 'm currently using*_csvTextScan_*  and I've some troubles/errors  
with*_csvRead_*  ...

    _Example_:

    ! 300006     12799 24678     17504     21558    212801     24680
    17508     21560 !

    NB:

    -I read first an ascii file

    -I removed some specific lines directly in the matrix

    -Then I'm trying to convert the matrix of characters into a matrix
    of intergers

    Thanks for any suggestion

    Paul

    #########################################

    PATH_FILE=  get_absolute_file_path("lecture.sce");

    FILE_NAME=  'topology_elem.rad';

    stacksize('max');

    M=  mopen(PATH_FILE+  "/"  +  FILE_NAME,'r');

    record=  mgetl(M);

    [nl,nc]  =  size(record);

    nbre_elem=  (nl/  3);

    Nodes_char(1:nbre_elem)  =  record(1:3:nl);

    /// convert/

    Nodes=  csvTextScan(Nodes_char,"    ");/// 
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!/

    mclose(M)

    
--------------------------------------------------------------------------------

    Le présent mail et ses pièces jointes sont confidentiels et destinés à la 
personne ou aux personnes visée(s) ci-dessus. Si vous avez reçu cet e-mail par 
erreur, veuillez contacter immédiatement l'expéditeur et effacer le message de 
votre système. Toute divulgation, copie ou distribution de cet e-mail est 
strictement interdite.

    This email and any files transmitted with it are confidential and intended 
solely for the use of the individual or entity to whom they are addressed. If 
you have received this email in error, please contact the sender and delete the 
email from your system. If you are not the named addressee you should not 
disseminate, distribute or copy this email.

    _______________________________________________

    users mailing list

    users@lists.scilab.org  <mailto:users@lists.scilab.org>

    http://lists.scilab.org/mailman/listinfo/users

--------------------------------------------------------------------------------


Le présent mail et ses pièces jointes sont confidentiels et destinés à la 
personne ou aux personnes visée(s) ci-dessus. Si vous avez reçu cet e-mail par 
erreur, veuillez contacter immédiatement l'expéditeur et effacer le message de 
votre système. Toute divulgation, copie ou distribution de cet e-mail est 
strictement interdite.

This email and any files transmitted with it are confidential and intended 
solely for the use of the individual or entity to whom they are addressed. If 
you have received this email in error, please contact the sender and delete the 
email from your system. If you are not the named addressee you should not 
disseminate, distribute or copy this email.




_______________________________________________
users mailing list
users@lists.scilab.org
http://lists.scilab.org/mailman/listinfo/users




--
Adrien Vogt-Schilb
PhD Student (Cired) and Consultant (The World Bank)
1 202 473 79 80

_______________________________________________
users mailing list
users@lists.scilab.org
http://lists.scilab.org/mailman/listinfo/users

Reply via email to