Counting characters between comma's

I have a comma delimited file that roughly has 300 fields. Not all fields are populated.
This file is fed into another system, what I need to do is count the amount of characters in each field and give me an output similiar to this:

1 - 6,2 - 25

The first number is the field and the second number is the amount of characters in that field.

Can anyone help with this?

My version of awk has a limit on number of fields, but it is possible to get around this if you use the split function to slice the input line($0) into an array(a) ....

awk '{
    x=split($0,a,",")
    for(i=1;i<=x;i++)
        printf (i==1?"":",") i "-" length(a)
    printf "\n"
}' file1

Brilliant...Many Thanks for your help