Convert whitespace to blanks when reading arrays from XML

This commit is contained in:
Paul Romano 2018-08-08 10:06:00 -05:00
parent 4ce37a5fc9
commit 5a0fc9eeba

View file

@ -261,6 +261,7 @@ contains
! Get value of text node/attribute
str = node_value_string(node, name)
call whitespace_to_blanks(str)
! Read numbers into array
read(UNIT=str, FMT=*, IOSTAT=stat) array
@ -283,6 +284,7 @@ contains
! Get value of text node/attribute
str = node_value_string(node, name)
call whitespace_to_blanks(str)
! Read numbers into array
read(UNIT=str, FMT=*, IOSTAT=stat) array
@ -333,4 +335,21 @@ contains
end if
end subroutine get_node_array_string
!===============================================================================
! WHITESPACE_TO_BLANKS converts all whitespace to blanks
!===============================================================================
subroutine whitespace_to_blanks(str)
character(len=*, kind=C_CHAR), intent(inout) :: str
integer :: i
do i = 1, len(str)
select case (str(i:i))
case (C_NEW_LINE, C_HORIZONTAL_TAB, C_CARRIAGE_RETURN)
str(i:i) = ' '
end select
end do
end subroutine
end module xml_interface