char combining error: Matrix dimensions must agree. - SIMPLE SCRIPT

7 vues (au cours des 30 derniers jours)
Fabrizio Argentieri
Fabrizio Argentieri le 4 Jan 2019
Commenté : Stephen23 le 4 Jan 2019
I am importing a large quantity of .dat files. I get this error even when running an apparently simple code:
clear all
clc
n='20000'
u='u2DSolution'+n+'.dat'
Error:
Matrix dimensions must agree.
Error in Untitled (line 5)
u='u2DSolution'+n+'.dat'
  1 commentaire
Stephen23
Stephen23 le 4 Jan 2019
"I get this error even when running an apparently simple code:"
It is simple code: you are adding the character codes of some character vectors. Just like with numeric vectors if they have incompatible sizes then you will get an error.
You probably want to concatenate those character vectors, rather than add their chracter codes.

Connectez-vous pour commenter.

Réponses (2)

Steven Lord
Steven Lord le 4 Jan 2019
The + operator performs concatenation if one of the things you're "adding" together is a string array.
n = 20000;
u = "u2DSolution" + n + ".dat"
The + operator when called with char arrays (no string arrays involved) performs arithmetic if the inputs are compatibly sized.
b = 'a' + 1 % double('b') which you can check with
characterB = char(b)

madhan ravi
madhan ravi le 4 Jan 2019
n='20000'
u=['u2DSolution',n,'.dat']

Catégories

En savoir plus sur Resizing and Reshaping Matrices dans Help Center et File Exchange

Produits


Version

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by