For a string field, is there a way to get the defined length of the field? For example say I allow a maximum of 10 chars, can I get that in apex?

I am not asking how to get the length of a string (i.e. str.length()).


You are looking for DescribeFieldResult.getLength():

For string fields, returns the maximum size of the field in Unicode characters (not bytes).

Schema.DescribeFieldResult F = Account.AccountNumber.getDescribe();
Integer lengthOfField = F.getLength();
| improve this answer | |

This is pretty straightforward in both Apex and Visualforce using describes:


Integer len = SObjectType.Object__c.Fields.Field__c.Length;


| improve this answer | |
integer fieldLength = Schema.SObjectType.CustObj__c.fields.CustField__c.getLength();

for more info

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.