=== modified file 'src/com/goldencode/harness/test/TestFactory.java'
--- old/src/com/goldencode/harness/test/TestFactory.java	2025-01-30 18:11:51 +0000
+++ new/src/com/goldencode/harness/test/TestFactory.java	2025-06-02 05:05:57 +0000
@@ -17,6 +17,7 @@
 ** 008 TJD 20241029 Added support for streams
 **     TJD 20241112 Added support for JUnit reports
 **     TJD 20250116 Support for StreamWaitFor variable substitution
+** 009 TJD 20250423 Allow specifying encoding of external files
 */
 
 /*
@@ -798,6 +799,9 @@
          // option 1: read the screen region from a file
          fname = elem.getAttribute(ATTR_FILENAME);
          
+         // get encoding
+         String encoding  = elem.getAttribute(ATTR_ENCODING);
+         
          // honor search paths
          fname = index.findBaseLine(fname);
          
@@ -809,8 +813,11 @@
             {
                try
                {
-                  FileReader     fr = new FileReader(screen);
-                  BufferedReader br = new BufferedReader(fr);
+                  InputStream       fis = new FileInputStream(screen);
+                  InputStreamReader fr = encoding == null ? 
+                                                     new InputStreamReader(fis) :
+                                                     new InputStreamReader(fis, encoding); 
+                  BufferedReader    br = new BufferedReader(fr);
                   
                   line = br.readLine();
                   int yIdx = 0;
@@ -826,7 +833,7 @@
                      yIdx++;
                      line = br.readLine();
                   }
-                  
+                  br.close();
                   found = true;
                }
                

