let line_of_char file n =
try
let chanin = open_in file in
let rec iter l m =
let s_opt =
try Some (input_line chanin)
with End_of_file -> None
in
match s_opt with
None -> l
| Some s ->
let new_m = m + ((String.length s) + 1) in (* + 1 is for '\\' *)
if new_m >= n then
l
else
iter (l + 1) new_m
in
let l = iter 0 0 in
close_in chanin ;
l
with
Sys_error s ->
prerr_endline s ;
0