[Scilab-users] Matrix of characters conversion

Carrico, Paul paul.carrico at esterline.com
Mon Oct 21 16:47:43 CEST 2013


Erreur de l'API :

                dans getAllocatedSingleString : Type erroné de l'argument d'entrée n°1 : Une seule chaîne de caractères attendue.

 

toto = fscanfMat(Nodes_char)

                             !--error 999 

fscanfMat : Erreur d'allocation mémoire.

 

De : users [mailto:users-bounces at lists.scilab.org] De la part de Adrien Vogt-Schilb
Envoyé : lundi 21 octobre 2013 16:43
À : International users mailing list for Scilab.
Objet : Re: [Scilab-users] Matrix of characters conversion

 

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-bounces at 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 at 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 at 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

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


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.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.scilab.org/pipermail/users/attachments/20131021/221c2b38/attachment.htm>


More information about the users mailing list