Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
bidev
Frequent Visitor

File not found handler

I have a code that looks for a file exists or not before doing further processing.  Result of "try Source" evaluation, Test[HasError] in if statement returns "False" always, whether or not there was a file "MyLog.log" in  the path "C:\Log-Files\Empty-LogFolder\".

Appreciate if you can shed some light on it.  Code below.  Thank you.   

 

***********************************

let
    File_Path = "C:\Log-Files\Empty-LogFolder\MyLog.log",
    Source = Csv.Document(File.Contents(File_Path),[Delimiter=";", Columns=3, Encoding=1252, QuoteStyle=QuoteStyle.None]),
   Test = try Source,
   Output = if Test[HasError] then "True" else "False"
in
   Output

 

1 ACCEPTED SOLUTION
v-shex-msft
Community Support
Community Support

Hi bidev,

 

Based on test, I can achieve your requirement, perhaps you could refer to below code:

 

let

    Path = "C:\Users\xxxxx\Desktop\audit.csv",

    Result = try Binary.ToText(File.Contents(Path)),

    Output =if Logical.From(Result[HasError]) then "not exist" else "exist"

in

Output

 

Screenshots.

Exist:

Capture.PNG 

 

Not exist:

Capture2.PNG

 

Descript:

Path = "C:\Users\xxxxx\Desktop\audit.csv", // the file path.

File.Contents(Path) // get the file from specify path and convert it to binary.

Binary.ToText(), // convert binary format to text.

Try //catch the error , if the action has error, it means the file doesn’t exist.

Output =if Logical.From(Result[HasError]) then "not exist" else "exist" //use if to format the result to text.

 

Reference:

Binary.ToText

File.Contents

Logical.From

 

Regards,

Xiaoxin Sheng

Community Support Team _ Xiaoxin
If this post helps, please consider accept as solution to help other members find it more quickly.

View solution in original post

2 REPLIES 2
v-shex-msft
Community Support
Community Support

Hi bidev,

 

Based on test, I can achieve your requirement, perhaps you could refer to below code:

 

let

    Path = "C:\Users\xxxxx\Desktop\audit.csv",

    Result = try Binary.ToText(File.Contents(Path)),

    Output =if Logical.From(Result[HasError]) then "not exist" else "exist"

in

Output

 

Screenshots.

Exist:

Capture.PNG 

 

Not exist:

Capture2.PNG

 

Descript:

Path = "C:\Users\xxxxx\Desktop\audit.csv", // the file path.

File.Contents(Path) // get the file from specify path and convert it to binary.

Binary.ToText(), // convert binary format to text.

Try //catch the error , if the action has error, it means the file doesn’t exist.

Output =if Logical.From(Result[HasError]) then "not exist" else "exist" //use if to format the result to text.

 

Reference:

Binary.ToText

File.Contents

Logical.From

 

Regards,

Xiaoxin Sheng

Community Support Team _ Xiaoxin
If this post helps, please consider accept as solution to help other members find it more quickly.

Hello Xiaoxin_Sheng,

 

Thank you very much.  Your solution really worked!  Awesome.

 

Thanks again.

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors
Top Kudoed Authors