Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(MFC) SharePoint -- Download a Text File into a String VariableDemonstrates how to download a text file from SharePoint into a string variable.
#include <CkHttp.h> #include <CkBinData.h> #include <CkStringBuilder.h> void ChilkatSample(void) { CkString strOut; // This requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // ------------------------------------------------------------------------- // The following comments apply to SharePoint Windows classic authentication. // ------------------------------------------------------------------------- // For example, imagine our SharePoint endpoint is https://xyzoffice.mycompany.com/ // The SHAREPOINT_NTLM_DOMAIN would be "mycompany.com" // The SHAREPOINT_HTTPS_DOMAIN would be "xyzoffice.mycompany.com" // Also, the SHAREPOINT_USERNAME would be just the name, not a full email address. // for example, "chilkat" instead of "chilkat@mycompany.com" CkHttp http; // If SharePoint Windows classic authentication is used, then set the // Login, Password, LoginDomain, and NtlmAuth properties. http.put_Login("SHAREPOINT_USERNAME"); http.put_Password("SHAREPOINT_PASSWORD"); http.put_LoginDomain("SHAREPOINT_NTLM_DOMAIN"); http.put_NtlmAuth(true); // ------------------------------------------------------------------------- // The more common case is to use SharePoint Online authentication (via the SPOIDCRL cookie). // If so, do not set Login, Password, LoginDomain, and NtlmAuth, and instead // establish the cookie as shown at SharePoint Online Authentication // ------------------------------------------------------------------------- // This example downloads a CSV file that is utf-8 and contains Japanese characters. const char *url = "https://SHAREPOINT_HTTPS_DOMAIN/_api/web/GetFileByServerRelativeUrl('/Documents/ChilkatTest/japanese.csv')/$value"; const char *strCsv = http.quickGetStr(url); if (http.get_LastMethodSuccess() != true) { strOut.append(http.lastErrorText()); strOut.append("\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); return; } // The CSV file is contained in strCsv. strOut.append("CSV:"); strOut.append("\r\n"); strOut.append(strCsv); strOut.append("\r\n"); // Note: The HTTP response hopefully indicates the charset of the response, // and Chilkat should receive the string correctly. If the response sent by // SharePoint does not indicate a charset, or indicates an incorrect charset, // then we can instead download the text file as binary data and interpret the // bytes ourselves correctly. For example: CkBinData bd; bool success = http.QuickGetBd(url,bd); if (success != true) { strOut.append(http.lastErrorText()); strOut.append("\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); return; } // Interpret the bytes correctly as utf-8 CkStringBuilder sb; sb.AppendBd(bd,"utf-8",0,0); strOut.append("CSV:"); strOut.append("\r\n"); strOut.append(sb.getAsString()); strOut.append("\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); } |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.