Reading characters from LCD

im using a 20x4 LCD.
is there any way to read characters written in the LCD screen?

Are you referring to a memory dump? LCD screens don't store any data, they just display what you tell them. If you want to keep a record if what was displayed, you will need to make an array for each row and update it every time you add something new.

is there any way to read characters written in the LCD screen?

Characters are not written to the LCD. The characters are used as indices into a font map to define what pixels to light up.

It is your responsibility to keep track of what you have asked to be displayed on the LCD.

If the OP is using the common type of LCD that is based on the HD44780 controller chip or clone, then it is indeed possible to read back the character data in the display RAM (DDRAM), and reconstruct what was sent to the display. A quick look suggests that the LiquidCrystal library does not support the operation of read from RAM, but it is supported by the controller. See the data sheet.