int CParseString::Parse(CStringArray& array, CString separ) { Init(separ); CString word; array.RemoveAll(); while (GetNextWord(word)) array.Add(word); return (int)array.GetSize(); }
void CFavorite::getFavUrl(CStringArray &arrayUrl) { int size = arrayUrl.GetSize(); for (int i=0; i<m_favString.GetSize(); ++i) { arrayUrl.InsertAt(size+i, m_favString.GetAt(i)); } }
/** * add files. * * @param [in] rastrFiles: string array of file names to be added * @param [in] bSelected: file is selected? Default is TRUE * @return successful? */ void CPPFileCollection::AddFiles(CStringArray& rastrFiles, BOOL bSelected /*=TRUE*/, BOOL bTemporary /*=FALSE*/) { int iNumFiles = rastrFiles.GetSize(); for(int iFile = 0; iFile < iNumFiles; ++iFile) { AddFile(rastrFiles[iFile], rastrFiles[iFile], bSelected, bTemporary); } }
///////////////////////////////////////////////////////////////////////////// // 枚举参数名 ///////////////////////////////////////////////////////////////////////////// int CPlugIn::EnumParameters(CStringArray& asName) { for(int i=0; i<m_arParameter.GetSize(); i++) { asName.Add(m_arParameter[i].m_strName); } return asName.GetSize(); }
// 提取所有字符串 int hgzExtractSubStrings( // 成功返回提取的子串数,不成功返回 0 CStringArray& arr, // 提取到的子串数组 const CString& cstrFullString, // 原字符串 const CString& regexSep ) // 分隔符字符串 { int size = arr.GetSize(); CString str(cstrFullString); CString subStr; int i = 0; while (hgzExtractSubString(subStr, str, i, regexSep)) { arr.Add(subStr); i++; } return arr.GetSize() - size; }
BOOL CFileNavDlg::BeginDownloadFiles(CStringArray& strURLs, CDWordArray& dwActionCodes) { for(int j = 0; j < strURLs.GetSize(); j++) { TRACE(_T("%s\n"), strURLs[j]); } return CAcUiNavDialog::BeginDownloadFiles(strURLs, dwActionCodes); }
int CUserListCtrl::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (CP4ListCtrl::OnCreate(lpCreateStruct) == -1) return -1; CStringArray colnames; colnames.Add ( LoadStringResource(IDS_NAME) ); colnames.Add ( LoadStringResource(IDS_E_MAIL) ); colnames.Add ( LoadStringResource(IDS_FULL_NAME) ); colnames.Add ( LoadStringResource(IDS_ACCESS) ); ASSERT( USER_MAXCOL == colnames.GetSize( ) ); int width[ USER_MAXCOL ]={90,150,150,90}; RestoreSavedWidths( width, colnames.GetSize( ), sRegValue_UserList ); InsertColumnHeaders( colnames, width ); return 0; }
unsigned char CHgzComboBox::GetWindowDec( void ) { CString str; GetWindowText(str); CStringArray arr; hgzExtractSubStrings(arr, str, _T(" +")); unsigned int *pi = new unsigned int[arr.GetSize()]; int i; for (i = 0; i < arr.GetSize(); i++) { _stscanf_s(arr[i], _T("%d"), pi + i); } unsigned char x = (unsigned char)pi[0]; delete [] pi; return x; }
// Start of helper functions BOOL CWaveformTransmitter::bIsWaveformSignalPresent(void) { ASSERT(NULL != m_pWaveDataHandler); CStringArray arrSignalNames; m_pWaveDataHandler->vGetAllDefinedSignalsNames(arrSignalNames); return (m_pWaveDataHandler->nGetNumberOfDefinedSignals() > 0 && arrSignalNames.GetSize()>0 ); }
// ============================================================================ void SaveStringArray(CArchive &ar, CStringArray &strArr) { int count = strArr.GetSize(); ar << count; for(int i = 0; i < count; i++) ar << strArr[i]; }
static void DispInfoExt(HWND hDlg,CShellExt *lpcs) { //クリア long items = ListBox_GetCount(GetDlgItem(hDlg,IDC_LIST_VALUE)); if(items != LB_ERR) { for(int i=0; i<items; i++) { COggExt *oggExt = (COggExt *)ListBox_GetItemData(GetDlgItem(hDlg,IDC_LIST_VALUE),0); if(oggExt) { delete oggExt; } ListBox_DeleteString(GetDlgItem(hDlg,IDC_LIST_VALUE),0); } } CString strDisp; CStringArray strArray; lpcs->m_Ogg.GetCommentNames(strArray); items = 0; for(int i=0; i<strArray.GetSize(); i++) { CString strName = strArray.GetAt(i); CString strValue; CString _strValue; int j = 0; while(1) { if(!lpcs->m_Ogg.GetComment(strName,j++,strValue)) { break; } //標準名は除外 if((j == 1) && ( !strName.Compare(_T("TITLE")) || !strName.Compare(_T("TRACKNUMBER")) || !strName.Compare(_T("ARTIST")) || !strName.Compare(_T("ALBUM")) || !strName.Compare(_T("ALBUMARTIST")) || !strName.Compare(_T("DISCNUMBER")) || !strName.Compare(_T("DATE")) || !strName.Compare(_T("GENRE")) || !strName.Compare(_T("COMMENT"))) ) { continue; } // TRACE(_T("OGG %s %s\n"),strName,strValue); COggExt *oggExt = new COggExt(strName,strValue); ListBox_AddString(GetDlgItem(hDlg,IDC_LIST_VALUE),oggExt->Get1LineDisp()); ListBox_SetItemData(GetDlgItem(hDlg,IDC_LIST_VALUE),items,oggExt); items++; } } }
BOOL COutWnd::bAddString(CStringArray& omStrArray) { BOOL bReturn = TRUE; INT nTotalCount = (COMMANINT)omStrArray.GetSize(); INT nReturnAdd = 0; // vResetContent(); MDIActivate(); omStrArray.Add(" "); INT nCount; //nCount declared outside for( nCount=0; nCount<nTotalCount; nCount++) { nReturnAdd = m_omListBox.AddString(omStrArray.GetAt(nCount)); if(nReturnAdd<0) { bReturn = FALSE; } } // Set horizontal extent of the list box to max string availaable // so that user can scroll CSize sz(0,0); CString omStrText = ""; CDC* pDC = m_omListBox.GetDC(); TEXTMETRIC tm; pDC->GetTextMetrics(&tm); //Check for valid dc and then set the horizontal extent if( pDC != NULL) { //Select the new font object to calculte the extent //because font is set for window not for CDC CFont* pOldFont = pDC->SelectObject(&m_omNewFont); INT nTotalItem = m_omListBox.GetCount(); INT nDx = 0; for (nCount = 0; nCount < nTotalItem; nCount++) { m_omListBox.GetText( nCount, omStrText ); // remove space omStrText.TrimRight(); sz = pDC->GetTextExtent(omStrText); //Add avg char width for avoiding any wrapping up sz.cx += tm.tmAveCharWidth; if (sz.cx > nDx) { nDx = sz.cx; } } //release the new font pDC->SelectObject(pOldFont); m_omListBox.ReleaseDC(pDC); // Set the horizontal extent so every character of all strings // can be scrolled to. m_omListBox.SetHorizontalExtent(nDx); } else { bReturn = FALSE; } return bReturn; }
void CollectFiles(CString InputDir,CStringArray &Files) { if(!(Files.GetSize())) return; CDjvuDlg *parent=(CDjvuDlg *)(MAINAPP->m_pMainWnd); SearchRsltDlg *dlg=(SearchRsltDlg *)(&(MAINAPP->SRDlg2)); CString T,ListFile=InputDir+"\\list.txt"; CString name,OutFile, OutPath; int i,j; j=InputDir.ReverseFind('\\'); name=InputDir.Right(InputDir.GetLength()-j-1); OutPath=InputDir.Left(j); OutFile.Format("%s\\%s_$$$.djvu",OutPath,name); CFile list; char buf[2]; buf[0]=0x0d; buf[1]=0x0a; list.Open(ListFile,CFile::modeCreate | CFile::modeWrite); for(i=0;i<Files.GetSize();i++) { T=InputDir+"\\"+Files[i]; list.Write(LPCSTR(T),T.GetLength()); list.Write(buf,2); } list.Close(); T.Format("%cdjvubundle.exe%c --files=%c%s%c %c%s%c",34,34,34,ListFile,34,34,OutFile,34); STARTUPINFO si; GetStartupInfo(&si); PROCESS_INFORMATION &pi1=MAINAPP->pi; if(CreateProcess(NULL, (char *)LPCSTR(T), NULL, NULL, FALSE, DETACHED_PROCESS | CREATE_SUSPENDED | IDLE_PRIORITY_CLASS, NULL, NULL, &si, &pi1)) { ResumeThread(pi1.hThread); WaitForSingleObject(pi1.hThread,INFINITE); HANDLE SearchHandle; WIN32_FIND_DATA FindFileData; if( (SearchHandle=FindFirstFile(LPCSTR(OutFile),&FindFileData) )!=INVALID_HANDLE_VALUE) { T.Format("%d files bundled SUCSESFULLY",Files.GetSize()); dlg->CollectInfo.AddString(T); T.Format("%s",OutFile); dlg->CollectInfo.AddString(T); for(i=0;i<Files.GetSize();i++) {T=InputDir+"\\"+Files[i];DeleteFile(T);} DeleteFile(ListFile); } else { T.Format("There was an ERROR"); dlg->CollectInfo.AddString(T); } } }
void PCFInstrument::Init( const CStringArray& wordArray ) { int wordNum = wordArray.GetSize(); int pointNum = 0 ; for(int i = 0; i < wordNum; i++) { SetSEBPoint(wordArray, i, pointNum, m_PointList, m_CenterPt); } }
void PCFPumpData::Init( const CStringArray& wordArray ) { int wordNum = wordArray.GetSize(); int pointNum = 0 ; for(int i = 0; i < wordNum; i++) { SetSEFromBasePt(wordArray, i, pointNum, m_PointList, m_CenterPt); } }
BOOL CTextFile::AppendFile( CString& filename, const CStringArray& contents ) /* ============================================================ Function : CTextFile::AppendFile Description : Appends contents to filename. Will create the file if it doesn't already exist. If filename is empty, the standard file dialog will be displayed, and - if OK is selected - filename will contain the selected filename on return. Return : BOOL - TRUE if OK. GetErrorMessage will return errors Parameters : CString& filename - file to write to CStringArray contents - contents to write ============================================================*/ { CStdioFile file; CFileException feError; BOOL result = TRUE; if( filename.IsEmpty() ) result = GetFilename( TRUE, filename ); if( result ) { // Write the file if( file.Open( filename, CFile::modeWrite | CFile::modeCreate | CFile::modeNoTruncate, &feError ) ) { file.SeekToEnd(); int max = contents.GetSize(); for( int t = 0 ; t < max ; t++ ) file.WriteString( contents[ t ] + m_eol ); file.Close(); } else { // Set error message TCHAR errBuff[256]; feError.GetErrorMessage( errBuff, 256 ); m_error = errBuff; result = FALSE; } } return result; }
int CHgzComboBox::GetWindowDec(int *pDec) { CString str; GetWindowText(str); CStringArray arr; hgzExtractSubStrings(arr, str, _T(" +")); int *pi = new int[arr.GetSize()]; int i; for (i = 0; i < arr.GetSize(); i++) { _stscanf_s(arr[i], _T("%d"), pi + i); pDec[i] = pi[i]; // 将输入序列的高字节存储在 Bytes 中的低地址中。(Big-Endian) } delete [] pi; return i; }
bool MyDouBan::Parse( const CString &strJson, JSON_INFO &tJsonInfo ) { string strJ = (LPCTSTR)strJson; size_t index = 0; strJ = strJ.substr(1, strJ.length()-2); //查询 此次返回的图书数量 strJ = strJ.substr(8); index = strJ.find(','); string strValue = strJ.substr(0, index); strJ = strJ.substr(index); tJsonInfo.m_nCount = atoi(strValue.c_str()); //查询 所获结果在全部结果中的偏移值 strJ = strJ.substr(9); index = strJ.find(','); strValue = strJ.substr(0, index); strJ = strJ.substr(index); tJsonInfo.m_nOffset = atoi(strValue.c_str()); //查询 全部书目条数 strJ = strJ.substr(9); index = strJ.find(','); strValue = strJ.substr(0, index); strJ = strJ.substr(index); tJsonInfo.m_nTotal = atoi(strValue.c_str()); //如果没有获取到书目,则直接返回 if (0 == tJsonInfo.m_nCount || 0 == tJsonInfo.m_nTotal) { return true; } //将表示书目的Json字符串按每本书分割到字符串数组中 strJ = strJ.substr(11, strJ.length()-12); CStringArray sarrBooks; ApiSplitToArray(sarrBooks, strJ.c_str(), "\"rating\":", TRUE, 1); int iCount = sarrBooks.GetSize(); if (0 == iCount) { return false; } for (int i=0; i<iCount; ++i) { BOOK book; if (GetBookInfo(sarrBooks.GetAt(i), book)) { tJsonInfo.m_lsBooks.push_front(book); } } return true; }
void AddMapItems(CStringArray& aKeys,CStringArray& aTitles, const char* szKey, const char* szDsc) { for(int i=0;i<aKeys.GetSize();i++){ if(aKeys[i]==szKey){ return; } } aTitles.SetAtGrow(aKeys.Add(szKey),szDsc); }
void PCFValve::Init( const CStringArray& wordArray ) { int wordNum = wordArray.GetSize(); int pointNum = 0 ; for(int i = 0; i < wordNum; i++) { SetBFromSEPt(wordArray, i, pointNum, m_PointList, m_CenterPt); } }
CString Sub(CStringArray& aszX)//Hieu cua cac tap hop { CString tempS=aszX[0]; for(int i=1; i<aszX.GetSize(); i++) tempS=Sub(tempS,aszX[i]); return tempS; }
int CSDMdlMachChamferAngCheck::CheckAction(void *pData, const CheckRule &checkRule, CheckResult &checkResult) { ProMdl pMdl = (ProMdl)pData; if (NULL == pMdl) { checkResult.nResultType = CHECK_RESULT_INVALID_MODEL; return checkResult.nResultType; } if (!IsMdlTypeValid(pMdl, checkRule.dwMdlFilter)) { checkResult.nResultType = CHECK_RESULT_INVALID_MODEL; return checkResult.nResultType; } // 检查输入值有效性 if (checkRule.arrRuleContent.GetCount() < 1) { checkResult.nResultType = CHECK_RESULT_INVALID_INPUT; return checkResult.nResultType; } CStringArray arrChamferAng; CStringToCStringArray(checkRule.arrRuleContent[0], arrChamferAng); for (int i = 0; i < arrChamferAng.GetSize(); i++) { if (IsNumber(arrChamferAng.GetAt(i)) == FALSE || _wtof(arrChamferAng.GetAt(i)) < 0 || DEQUAL(_wtof(arrChamferAng.GetAt(i)),0.0)) { checkResult.nResultType = CHECK_RESULT_INVALID_INPUT; return CHECK_RESULT_INVALID_INPUT; } } ChamferFeaVisitAngData visitData; visitData.nResultType = CHECK_RESULT_NO_ERROR; visitData.strAngle = checkRule.arrRuleContent[0]; ProError status; status = ProSolidFeatVisit((ProSolid)pMdl, ChamferFeaVisitAction, ChamferFeaFilterAction, &visitData); checkResult.arrErrorItems.RemoveAll(); ErrorItem errItem; for (int i=0; i<visitData.arrChamferAngErrorIDs.GetSize(); i++) { errItem.nID = visitData.arrChamferAngErrorIDs[i]; errItem.nType = PRO_FEATURE; errItem.pOwner = pMdl; checkResult.arrErrorItems.Add(errItem); } checkResult.nResultType = visitData.nResultType; return visitData.nResultType; }
void CPreferences::SetUrlFilter(CStringArray &filter) { m_arrayUrlFilter.RemoveAll(); for (int i=0; i<filter.GetSize(); ++i) { m_arrayUrlFilter.Add(filter.GetAt(i)); } }
BOOL CCustomAutoComplete::SetList(const CStringArray &astrItemList) { ATLASSERT(astrItemList.GetSize() != 0); Clear(); m_asList.Append(astrItemList); return TRUE; }
int CHgzComboBox::GetWindowHex(unsigned char * pHex) { CString str; GetWindowText(str); CStringArray arr; hgzExtractSubStrings(arr, str, _T(" +")); unsigned int *pi = new unsigned int[arr.GetSize()]; int i; for (i = 0; i < arr.GetSize(); i++) { _stscanf_s(arr[i], _T("%x"), pi + i); pHex[i] = (unsigned char)pi[i]; // 将输入序列的高字节存储在 Bytes 中的低地址中。(Big-Endian) } delete [] pi; return i; }
gbool GUrlCache::AddCacheDirectory(const char *dir,CStringArray &readCacheDirs) { CString directory; directory = dir; directory.TrimRight(); directory.TrimLeft(); if (directory.IsEmpty()) return FALSE; // if (strprefix(directory,"cdrom") || strprefix(directory,"CDROM")) { // replace cd rom with found cdroms int i=0; const char *x = directory; x+=strlen("cdrom"); // get cdrom id if (*x >= '0' && *x <'9') { i = (*x - '0'); x++; } // skip the : if (*x == ':') x++; if (i<cdroms.GetSize()) { CString dir = cdroms.GetAt(i); // strip of prefix if (*x == '\\') x++; else if (*x == '/') x++; directory = dir + CString(x); } else return FALSE; // no cdrom } // filter out duplicates for (int i=0; i<readCacheDirs.GetSize(); i++) { if (readCacheDirs.GetAt(i) == directory) return FALSE; } if (ExistsDirectory(directory)) { readCacheDirs.Add(directory); return TRUE; } return FALSE; }
BOOL CBCGPTagManager::ParseString (const CString& str, const CString& sep, CStringArray& sa, BOOL bTrim, BOOL bIncludeEmpty) { sa.RemoveAll (); if (str.IsEmpty ()) { return FALSE; } CString s (str); if (bTrim) { s.TrimLeft (); s.TrimRight (); } if (s.IsEmpty ()) { return FALSE; } if (sep.IsEmpty ()) { return FALSE; } int pos = s.Find (sep); int sepLength = sep.GetLength (); while (pos != -1) { CString sp = s.Left (pos); s = s.Right (s.GetLength () - sepLength - pos); if (bTrim) { sp.TrimLeft (); sp.TrimRight (); s.TrimLeft (); } if ((sp.IsEmpty () && bIncludeEmpty) || !sp.IsEmpty ()) { sa.Add (sp); } pos = s.Find (sep); if (pos == -1 && ((s.IsEmpty () && bIncludeEmpty) || !s.IsEmpty ())) { sa.Add (s); } } return sa.GetSize () > 0; }
/** * sort toolbar. * * sorts toolbar items according to the corresponding main menu. * * @param * @return * @exception - * @see */ void CKADToolbar::SortToolbar(CKADMenu* pMenu) { // run over all toolbar items and inser them into lex tree CSBLLexTree<CKADToolbarItem> tItemTree; CKADToolbarItem* pToolbarItem; CKADMenuItem* pMenuItem; int iNumItems; // run over item list and insert them into the lex tree POSITION pos = m_tItemList.GetHeadPosition(); while(pos) { pToolbarItem = m_tItemList.GetAt(pos); if(pToolbarItem->m_iMainMenuItemNo >= 0) { pMenuItem = pMenu->GetMenuItemWithId(pToolbarItem->m_iMainMenuItemNo); ASSERT(pMenuItem); if(pMenuItem) { if(!pMenuItem->m_strOrderKey.IsEmpty()) { VERIFY(tItemTree.insertData(pMenuItem->m_strOrderKey, pToolbarItem)); } else { delete pToolbarItem; } } } m_tItemList.GetNext(pos); } // now delete item array and fill it sorted m_tItemList.RemoveAll(); CStringArray astrOrderKeys; CString strOrderKeyOld; CString strOrderKeyNew; tItemTree.getAllStringsFromSubstring("", astrOrderKeys); iNumItems = astrOrderKeys.GetSize(); for(int iItem = 0; iItem < iNumItems; ++iItem) { strOrderKeyNew = astrOrderKeys[iItem]; pToolbarItem = tItemTree.getData(strOrderKeyNew); if(!strOrderKeyNew.IsEmpty() && !strOrderKeyOld.IsEmpty()) { if(strOrderKeyNew[0] != strOrderKeyOld[0]) { AddSeparatorItem(); } } m_tItemList.AddTail(pToolbarItem); strOrderKeyOld = strOrderKeyNew; } }
void CLogObjectCAN::Der_SetDatabaseFiles(const CStringArray& omList) { // Clear before updating m_omListDBFiles.RemoveAll(); for (int nIdx = 0; nIdx < omList.GetSize(); nIdx++) { m_omListDBFiles.Add(omList.GetAt(nIdx)); } }
void Combine(CStringArray& aszX, CString s, int k,CStringArray& aszC) { if(aszX.GetSize() > 10) { AfxMessageBox("So to hop qua lon",MB_OK); aszX.SetSize(10); } int i,j; CStringArray aszTemp; for(i=k; i<aszX.GetSize(); i++) { aszTemp.Add(s + aszX[i]); aszC.Add(Union(s , aszX[i])); } k++; for(j=0; j<aszTemp.GetSize(); j++) Combine(aszX,aszTemp[j],j+k,aszC); }