SUBROUTINE CMPRES(LENGTH,STRING) C C PURPOSE: REMOVES EMBEDDED SPACES OR CONTROL CHARACTERS FROM "LENGTH" C CHARACTERS IN "STRING" BYTE ARRAY. SPECIAL CASE OCCURS FOR QOUTED C FIELDS (E.G. "DO NOT REMOVE SPACES HERE") WHICH ARE NOT COMPRESSED. C ON RETURN, LENGTH SET TO NEW STRING LENGTH. C C SORENSON 2/81 C DIMENSION STRING(LENGTH) BYTE STRING BYTE SPACE,QUOTE DATA SPACE/' '/,QUOTE/'"'/ C C K SET TO 0 WHEN NOT IN QUOTED FIELD C J USED AS POINTER FOR COPYING STRING IN PLACE C K=0 J=1 DO 20 I=1,LENGTH IF(STRING(I).EQ.QUOTE)GO TO 10 IF(K.NE.0.OR.STRING(I).GT.SPACE)GO TO 15 GO TO 20 10 IF(K.NE.0)GO TO 12 K=1 GO TO 15 12 K=0 15 STRING(J)=STRING(I) J=J+1 20 CONTINUE 21 LENGTH=J-1 RETURN END