Просто предположение, поскольку я сам никогда не сталкивался с этой проблемой, но я предполагаю, что это должно сработать:
lapply(list.files(folder, full.names = TRUE), function(file){
tryCatch(a1 <- xml2::read_xml(file),
error = function(e){
con <- file(description = file)
fix_to_write <- readLines(file) %>%
gsub("&", "and", .)
close(con)
writeLines(fix_to_write, file)
})
})
readLines
фактически откроет соединение с файлом, если предоставлена строка символов. Это должно быть закрыто при выходе, но, возможно, имеет смысл сделать это явно. Дайте мне знать, если это поможет.